@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-serif:ui-serif,Georgia,Cambria,"Times New Roman",Times,serif;--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-100:#ffe2e2;--color-red-600:#e40014;--color-red-800:#9f0712;--color-amber-50:#fffbeb;--color-amber-500:#f99c00;--color-amber-600:#dd7400;--color-amber-700:#b75000;--color-amber-900:#7b3306;--color-green-50:#f0fdf4;--color-green-100:#dcfce7;--color-green-200:#b9f8cf;--color-green-600:#00a544;--color-green-700:#008138;--color-green-800:#016630;--color-emerald-500:#00bb7f;--color-slate-50:#f8fafc;--color-slate-100:#f1f5f9;--color-slate-200:#e2e8f0;--color-slate-400:#90a1b9;--color-slate-500:#62748e;--color-slate-900:#0f172b;--color-neutral-200:#e5e5e5;--color-neutral-600:#525252;--color-neutral-900:#171717;--color-white:#fff;--spacing:.25rem;--container-4xl:56rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--text-2xl:1.5rem;--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25/1.875);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-wider:.05em;--radius-xs:.125rem;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--ease-out:cubic-bezier(0,0,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--animate-spin:spin 1s linear infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}@supports (color:lab(0% 0 0)){:root,:host{--color-red-100:lab(92.243% 10.2865 3.83865);--color-red-600:lab(48.4493% 77.4328 61.5452);--color-red-800:lab(33.7174% 55.8993 41.0293);--color-amber-50:lab(98.6252% -.635922 8.42309);--color-amber-500:lab(72.7183% 31.8672 97.9407);--color-amber-600:lab(60.3514% 40.5624 87.1228);--color-amber-700:lab(47.2709% 42.9082 69.2966);--color-amber-900:lab(31.2288% 30.2627 40.0378);--color-green-50:lab(98.1563% -5.60117 2.75915);--color-green-100:lab(96.1861% -13.8464 6.52365);--color-green-200:lab(92.4222% -26.4702 12.9427);--color-green-600:lab(59.0978% -58.6621 41.2579);--color-green-700:lab(47.0329% -47.0239 31.4788);--color-green-800:lab(37.4616% -36.7971 22.9692);--color-emerald-500:lab(66.9756% -58.27 19.5419);--color-slate-50:lab(98.1434% -.369519 -1.05966);--color-slate-100:lab(96.286% -.852436 -2.46847);--color-slate-200:lab(91.7353% -.998765 -4.76968);--color-slate-400:lab(65.5349% -2.25151 -14.5072);--color-slate-500:lab(48.0876% -2.03595 -16.5814);--color-slate-900:lab(7.78673% 1.82345 -15.0537);--color-neutral-200:lab(90.952% 0 -.0000119209);--color-neutral-600:lab(34.924% 0 0);--color-neutral-900:lab(7.78201% -.0000149012 0)}}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.col-3{grid-column:3}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.mt-0\.5{margin-top:calc(var(--spacing)*.5)}.mt-1{margin-top:calc(var(--spacing)*1)}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-3{margin-top:calc(var(--spacing)*3)}.mt-4{margin-top:calc(var(--spacing)*4)}.mb-1{margin-bottom:calc(var(--spacing)*1)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-3{margin-bottom:calc(var(--spacing)*3)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.mb-6{margin-bottom:calc(var(--spacing)*6)}.mb-8{margin-bottom:calc(var(--spacing)*8)}.ml-1{margin-left:calc(var(--spacing)*1)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-2{height:calc(var(--spacing)*2)}.h-5{height:calc(var(--spacing)*5)}.h-full{height:100%}.w-1\.5{width:calc(var(--spacing)*1.5)}.w-5{width:calc(var(--spacing)*5)}.w-auto{width:auto}.w-full{width:100%}.max-w-4xl{max-width:var(--container-4xl)}.min-w-0{min-width:calc(var(--spacing)*0)}.min-w-full{min-width:100%}.flex-1{flex:1}.flex-shrink{flex-shrink:1}.flex-shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.animate-spin{animation:var(--animate-spin)}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.resize{resize:both}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-1{gap:calc(var(--spacing)*1)}.gap-2{gap:calc(var(--spacing)*2)}.gap-3{gap:calc(var(--spacing)*3)}.gap-4{gap:calc(var(--spacing)*4)}.gap-6{gap:calc(var(--spacing)*6)}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px*var(--tw-divide-y-reverse));border-bottom-width:calc(1px*calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-slate-200>:not(:last-child)){border-color:var(--color-slate-200)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.border{border-style:var(--tw-border-style);border-width:1px}.border-amber-500\/30{border-color:#f99c004d}@supports (color:color-mix(in lab, red, red)){.border-amber-500\/30{border-color:color-mix(in oklab,var(--color-amber-500)30%,transparent)}}.border-green-200{border-color:var(--color-green-200)}.border-slate-200{border-color:var(--color-slate-200)}.bg-amber-50\/50{background-color:#fffbeb80}@supports (color:color-mix(in lab, red, red)){.bg-amber-50\/50{background-color:color-mix(in oklab,var(--color-amber-50)50%,transparent)}}.bg-amber-500{background-color:var(--color-amber-500)}.bg-emerald-500{background-color:var(--color-emerald-500)}.bg-green-50{background-color:var(--color-green-50)}.bg-green-100{background-color:var(--color-green-100)}.bg-neutral-200{background-color:var(--color-neutral-200)}.bg-red-100{background-color:var(--color-red-100)}.bg-slate-50{background-color:var(--color-slate-50)}.bg-slate-100{background-color:var(--color-slate-100)}.bg-white{background-color:var(--color-white)}.p-0\.5{padding:calc(var(--spacing)*.5)}.p-4{padding:calc(var(--spacing)*4)}.p-6{padding:calc(var(--spacing)*6)}.p-8{padding:calc(var(--spacing)*8)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-6{padding-inline:calc(var(--spacing)*6)}.py-1{padding-block:calc(var(--spacing)*1)}.py-3{padding-block:calc(var(--spacing)*3)}.py-4{padding-block:calc(var(--spacing)*4)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-sans{font-family:var(--font-sans)}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-5{--tw-leading:calc(var(--spacing)*5);line-height:calc(var(--spacing)*5)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.whitespace-nowrap{white-space:nowrap}.text-amber-600{color:var(--color-amber-600)}.text-amber-700{color:var(--color-amber-700)}.text-amber-900{color:var(--color-amber-900)}.text-green-600{color:var(--color-green-600)}.text-green-700{color:var(--color-green-700)}.text-green-800{color:var(--color-green-800)}.text-neutral-600{color:var(--color-neutral-600)}.text-neutral-900{color:var(--color-neutral-900)}.text-red-600{color:var(--color-red-600)}.text-red-800{color:var(--color-red-800)}.text-slate-400{color:var(--color-slate-400)}.text-slate-500{color:var(--color-slate-500)}.text-slate-900{color:var(--color-slate-900)}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.line-through{text-decoration-line:line-through}.overline{text-decoration-line:overline}.underline{text-decoration-line:underline}.opacity-60{opacity:.6}.ring{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.select-all{-webkit-user-select:all;user-select:all}@media (hover:hover){.group-hover\:flex:is(:where(.group):hover *){display:flex}}@media (min-width:40rem){.sm\:table-cell{display:table-cell}}}:root{--surface-base:#f2efe8;--surface-sidebar:#e8e4dc;--surface-card:#e8e4dc;--surface-card-hover:#e2ddd4;--surface-raised:#edeae2;--surface-overlay:#dedad2;--text-primary:#26332a;--text-secondary:#5a6b5c;--text-muted:#9a9590;--text-inverse:#f2efe8;--border-subtle:#26332a14;--border-default:#26332a2e;--border-medium:#26332a21;--border-strong:#26332a38;--color-forest:#4a6b52;--color-sage:#7a8c7e;--color-aji:#d4622a;--color-violet:#7b61ff;--color-lavender:#b8a9ff;--color-amber:#c8963a;--color-cyan:#0e7490;--color-ink:#26332a;--color-positive:var(--color-forest);--color-positive-bg:#4a6b521a;--color-positive-bdr:#4a6b522e;--color-cyan-bg:#0694a21a;--color-cyan-bdr:#0694a240;--color-warning:var(--color-aji);--color-warning-bg:#d4622a17;--color-warning-bdr:#d4622a29;--color-info-bg:#c8963a17;--color-info-bdr:#c8963a2e;--color-ai-bg:#7b61ff12;--color-ai-bdr:#7b61ff26;--color-danger-solid:var(--color-aji);--sidebar-w:232px;--sidebar-collapsed-w:56px;--sb-bg:#26332a;--sb-surface:#ffffff0f;--sb-surface-hover:#ffffff14;--sb-surface-active:#ffffff1a;--sb-border:#ffffff12;--sb-text:#ffffffe0;--sb-text-secondary:#ffffff8c;--sb-text-muted:#ffffff59;--tree-color:#3a4a3c;--font-display:"Fraunces",Georgia,serif;--font-heading:"Lora",Georgia,serif;--font-body:"DM Sans",system-ui,sans-serif;--text-xs:10px;--text-sm:12px;--text-md:13px;--text-lg:16px;--text-xl:20px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:18px;--radius-pill:999px;--topbar-h:52px;--content-pad:22px;--content-pad-mobile:14px;--shadow-card:none;--shadow-modal:none;--ease:cubic-bezier(.4,0,.2,1);--t-fast:.15s;--t-med:.25s;--t-slow:.4s}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;margin:0;padding:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{font-family:var(--font-body);color:var(--text-primary);background:var(--surface-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:13px}.t-display{font-family:var(--font-display);letter-spacing:-.6px;font-size:32px;font-weight:500;line-height:1.1}.t-heading{font-family:var(--font-heading);letter-spacing:-.3px;font-size:22px;font-weight:500}.t-subhead{font-family:var(--font-heading);font-size:16px;font-weight:500}.t-label{font-family:var(--font-body);letter-spacing:.01em;font-size:11px;font-weight:500}.t-body{font-family:var(--font-body);color:var(--text-secondary);font-size:13px;line-height:1.6}.t-meta{font-family:var(--font-body);color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:9px}.t-number{font-family:var(--font-display);letter-spacing:-.5px;font-size:26px;font-weight:500;line-height:1}.t-mono{font-family:var(--font-display);font-size:11px}.delta-up{color:var(--color-forest)}.delta-down{color:var(--color-aji)}.delta-flat{color:var(--text-muted)}.color-amber{color:var(--color-amber)}.color-forest{color:var(--color-forest)}.color-aji{color:var(--color-aji)}.color-muted{color:var(--text-muted)}.app-shell{grid-template-rows:var(--topbar-h)1fr;grid-template-columns:var(--sidebar-w)1fr;background:var(--surface-base);width:100%;height:100dvh;display:grid;overflow:hidden}.app-shell.collapsed{grid-template-columns:var(--sidebar-collapsed-w)1fr}.topbar{border-bottom:1px solid var(--border-subtle);padding:0 var(--content-pad);z-index:100;background:#f2efe8f7;grid-column:2;align-items:center;display:flex;position:relative}.topbar-brand{display:none}.topbar-bell{border-radius:var(--radius-sm);cursor:pointer;width:32px;height:32px;color:var(--text-secondary);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;transition:all .12s;display:flex;position:relative}.topbar-bell:hover{background:var(--border-subtle);color:var(--text-primary)}.topbar-month-btn:hover{background:var(--surface-overlay)}.notif-badge{border-radius:var(--radius-pill);background:var(--color-aji);color:#fff;border:2px solid var(--surface-base);justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;font-size:9px;font-weight:500;line-height:1;display:flex;position:absolute;top:2px;right:2px}.sidebar{background:var(--sb-bg);flex-direction:column;grid-area:1/1/-1;display:flex;overflow:hidden}.sidebar-logo{height:var(--topbar-h);border-bottom:1px solid var(--sb-border);flex-shrink:0;align-items:center;gap:8px;padding:0 8px 0 14px;display:flex;overflow:hidden}.sidebar-logo-inner{flex:1;min-width:0;transition:opacity .15s;overflow:hidden}.app-shell.collapsed .sidebar-logo-inner{opacity:0;flex:0;width:0}.app-shell.collapsed .sidebar-logo{justify-content:center;padding:0}.sidebar-logo .collapse-btn{border-radius:var(--radius-sm);cursor:pointer;width:24px;height:24px;color:var(--sb-text-muted);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;transition:all .12s;display:flex}.sidebar-logo .collapse-btn:hover{background:var(--sb-surface-hover);color:var(--sb-text-secondary)}.sidebar-nav{scrollbar-width:none;flex-direction:column;flex:1;padding:6px 10px 8px;display:flex;overflow:hidden auto}.sidebar-nav::-webkit-scrollbar{display:none}.app-shell.collapsed .sidebar-nav{align-items:center;padding:8px 0}.sb-logo-area{display:none}.main-content{padding:var(--content-pad);background:var(--surface-base);overflow-y:auto}.page-header{margin-bottom:var(--space-5);justify-content:space-between;align-items:flex-start;display:flex}.page-title{font-family:var(--font-heading);color:var(--text-primary);letter-spacing:-.3px;font-size:22px;font-weight:500}.page-sub{color:var(--text-muted);margin-top:3px;font-size:11px}.section-header{margin-bottom:var(--space-3);justify-content:space-between;align-items:center;display:flex}.section-title{font-family:var(--font-heading);color:var(--text-primary);font-size:14px;font-weight:500}.section-meta{color:var(--text-muted);font-size:10px}.section-label{color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;padding:var(--space-3)0 var(--space-2);font-size:9px}.card{background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);transition:transform var(--t-med)var(--ease),border-color var(--t-fast)var(--ease)}.card:not(.kpi-card):hover{border-color:var(--border-medium);transform:translateY(-2px)}.card-pad{padding:var(--space-4)}.card-pad-sm{padding:var(--space-3)}.card-pad-lg{padding:var(--space-5)}.kpi-card{padding:var(--space-4);cursor:default}.kpi-card:hover{animation:.55s cubic-bezier(.36,.07,.19,.97) kpiBounce}.kpi-card-sm{padding:var(--space-3)}.kpi-card-sm .kpi-label{margin-bottom:3px;font-size:8px}.kpi-card-sm .kpi-value{font-size:18px}.kpi-card-sm .kpi-delta{margin-top:2px;font-size:9px}.kpi-card-sm .kpi-bar{margin-top:6px}@keyframes kpiBounce{0%{transform:translateY(0)}28%{transform:translateY(-8px)}48%{transform:translateY(0)}65%{transform:translateY(-4px)}80%{transform:translateY(0)}90%{transform:translateY(-2px)}to{transform:translateY(0)}}.kpi-label{color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:5px;font-size:9px}.kpi-value{font-family:var(--font-display);color:var(--text-primary);letter-spacing:-.5px;font-size:26px;font-weight:500;line-height:1}.kpi-delta{margin-top:4px;font-size:10px}.kpi-bar{background:var(--surface-overlay);border-radius:1px;height:2px;margin-top:11px;overflow:hidden}.kpi-fill{height:100%;transition:width 1.3s var(--ease);will-change:width;border-radius:1px}.kpi-fill-forest{background:var(--color-forest)}.kpi-fill-sage{background:var(--color-sage)}.kpi-fill-aji{background:var(--color-aji)}.kpi-fill-violet{background:var(--color-violet);opacity:.55}.kpi-card-ai{background:var(--color-ai-bg);border-color:var(--color-ai-bdr)}.kpi-card-ai .kpi-label,.kpi-card-ai .kpi-value{color:var(--color-violet)}.kpi-card-ai .kpi-bar{background:#7b61ff1a}.mini-stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:3px;font-size:9px}.mini-stat-value{font-family:var(--font-display);color:var(--text-primary);letter-spacing:-.4px;font-size:20px;font-weight:500}.mini-stat-sub{color:var(--text-muted);margin-top:2px;font-size:9px}.card-highlight{background:var(--color-ink);border-color:var(--color-ink);padding:var(--space-5)var(--space-4);text-align:center}.card-highlight .hl-label{color:#ffffff73;letter-spacing:.06em;text-transform:uppercase;margin-bottom:6px;font-size:10px}.card-highlight .hl-value{font-family:var(--font-display);color:#fff;letter-spacing:-.6px;font-size:32px;font-weight:500}.card-highlight.positive .hl-value{color:#9fe1cb}.card-highlight.negative .hl-value{color:#f5a07a}.amount-block{border-radius:var(--radius-md);padding:10px 14px}.amount-block-transfer{background:var(--color-positive-bg);border:1px solid var(--color-positive-bdr)}.amount-block-cost{background:var(--color-warning-bg);border:1px solid var(--color-warning-bdr)}.amount-block-label{color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:3px;font-size:8px}.amount-block-value{font-family:var(--font-display);letter-spacing:-.3px;font-size:20px;font-weight:500}.amount-block-transfer .amount-block-value{color:var(--color-forest)}.amount-block-cost .amount-block-value{color:var(--color-aji)}.chip{white-space:nowrap;border-radius:var(--radius-pill);font-size:10px;font-weight:500;font-family:var(--font-body);letter-spacing:.01em;align-items:center;gap:4px;padding:3px 9px;display:inline-flex}.chip-dot{border-radius:50%;flex-shrink:0;width:5px;height:5px}.chip-group{align-items:center;gap:4px;display:inline-flex}.chip-final{color:#2d5c3a;background:#4a6b521f;border:1px solid #4a6b5233}.chip-draft,.chip-pending{color:#7a5a18;background:#c8963a1f;border:1px solid #c8963a38}.chip-approved{color:#2d5c3a;background:#4a6b521f;border:1px solid #4a6b5233}.chip-aprobado{color:#065f6e;background:#b2eaf033;border:1px solid #7dd8e3}.chip-paid{color:#2d5c3a;background:#4a6b521f;border:1px solid #4a6b5233}.chip-overdue{background:var(--color-aji);color:#fff;animation:2.2s ease-in-out infinite dangerPulse}.chip-warning{background:var(--color-warning-bg);color:#7a2a18;border:1px solid var(--color-warning-bdr)}.chip-annulled{color:var(--text-muted);border:1px solid var(--border-subtle);background:#26332a12}.chip-cancelled{color:var(--text-muted);border:1px solid var(--border-subtle);background:#26332a12;text-decoration:line-through}.chip-info{background:var(--color-ai-bg);color:var(--color-violet);border:1px solid var(--color-ai-bdr)}.chip-edited{color:#7a5a18;background:#c8963a1f;border:1px solid #c8963a38;font-size:9px}.chip-source,.chip-rejected{color:var(--color-aji);background:#d4622a14;border:1px solid #d4622a26}@keyframes dangerPulse{0%,to{opacity:1}50%{opacity:.6}}.btn{font-family:var(--font-body);border-radius:var(--radius-pill);cursor:pointer;transition:all var(--t-fast)var(--ease);white-space:nowrap;letter-spacing:.01em;border:none;align-items:center;gap:6px;padding:8px 16px;font-size:11px;font-weight:500;text-decoration:none;display:inline-flex}.btn:active{transform:scale(.96)}.btn-sm{padding:5px 11px;font-size:10px}.btn-lg{border-radius:var(--radius-md);padding:12px 22px;font-size:13px}.btn-full{border-radius:var(--radius-md);justify-content:center;width:100%;padding:12px;font-size:13px}.btn-icon{border-radius:var(--radius-sm);padding:7px}.btn-primary{background:var(--color-ink);color:var(--text-inverse);border:1px solid #0000}.btn-primary:hover{opacity:.86}.btn-secondary{background:var(--surface-card);color:var(--text-primary);border:1px solid var(--border-medium)}.btn-secondary:hover{background:var(--surface-overlay)}.btn-ghost{color:var(--text-secondary);border:1px solid var(--border-medium);background:0 0}.btn-ghost:hover{background:var(--surface-card)}.btn-ai{background:var(--color-ai-bg);color:var(--color-violet);border:1px solid var(--color-ai-bdr)}.btn-ai:hover{background:#7b61ff1f}.btn-danger{background:var(--color-aji);color:#fff}.btn-danger:hover{opacity:.88}.btn-link{color:var(--color-forest);background:0 0;border:none;padding:0;font-size:11px;font-weight:500}.btn-link:hover{opacity:.72}.btn-link-muted{color:var(--text-muted)}.btn-primary.saving{background:var(--color-sage);pointer-events:none}.btn-primary.saved{background:var(--color-forest);pointer-events:none}.alert{border-radius:var(--radius-md);justify-content:space-between;align-items:center;gap:var(--space-3);padding:10px 14px;font-size:11px;display:flex}.alert-link{cursor:pointer;white-space:nowrap;flex-shrink:0;font-weight:500}.alert-warning{background:var(--color-warning-bg);border:1px solid var(--color-warning-bdr);border-left:3px solid var(--color-aji);color:#7a2a18}.alert-warning .alert-link{color:var(--color-aji)}.alert-info{background:var(--color-ai-bg);border:1px solid var(--color-ai-bdr);border-left:3px solid var(--color-violet);color:#4a3a9a}.alert-info .alert-link{color:var(--color-violet)}.alert-success{background:var(--color-positive-bg);border:1px solid var(--color-positive-bdr);border-left:3px solid var(--color-forest);color:#1e4a28}.alert-success .alert-link{color:var(--color-forest)}.alert-amber{background:var(--color-info-bg);border:1px solid var(--color-info-bdr);border-left:3px solid var(--color-amber);color:#5a3a10}.alert-amber .alert-link{color:var(--color-amber)}.form-group{margin-bottom:var(--space-4)}.form-label{color:var(--text-secondary);letter-spacing:.01em;margin-bottom:6px;font-size:11px;font-weight:500;display:block}.form-label .required{color:var(--color-aji);margin-left:2px}.form-hint{color:var(--text-muted);margin-top:4px;font-size:13px}.form-error{color:var(--color-aji);margin-top:4px;font-size:12px}.input{background:var(--surface-base);width:100%;height:40px;color:var(--text-primary);border:1px solid var(--border-medium);border-radius:var(--radius-md);font-size:12px;font-family:var(--font-body);transition:border-color var(--t-fast)var(--ease);outline:none;padding:0 12px}.input:focus{border-color:var(--color-sage)}.input::placeholder{color:var(--text-muted)}.input:disabled{opacity:.5;cursor:not-allowed}.input.error{border-color:var(--color-aji)}.input-money{background:var(--surface-base);border:1px solid var(--border-medium);border-radius:var(--radius-md);height:40px;transition:border-color var(--t-fast)var(--ease);align-items:center;display:flex;overflow:hidden}.input-money:focus-within{border-color:var(--color-sage)}.input-money-symbol{color:var(--text-muted);border-right:1px solid var(--border-subtle);flex-shrink:0;padding:0 10px;font-size:12px}.input-money input{font-family:var(--font-display);color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;height:100%;padding:0 10px;font-size:14px;font-weight:500}.input-icon{background:var(--surface-base);border:1px solid var(--border-medium);border-radius:var(--radius-md);height:40px;transition:border-color var(--t-fast)var(--ease);align-items:center;display:flex;overflow:hidden}.input-icon:focus-within{border-color:var(--color-sage)}.input-icon.error{border-color:var(--color-aji)}.input-icon-prefix{color:var(--text-muted);border-right:1px solid var(--border-subtle);flex-shrink:0;align-items:center;padding:0 10px;display:flex}.input-icon input{font-family:var(--font-body);color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;height:100%;padding:0 10px;font-size:14px}.input-icon input::placeholder{color:var(--text-placeholder,var(--text-muted));opacity:.6}.input-icon input:disabled{opacity:.5;cursor:not-allowed}.wizard-hint{font-family:var(--font-body);font-size:var(--text-xs);color:var(--text-muted);text-align:center;margin-top:.625rem;line-height:1.5}.select{background:var(--surface-base);width:100%;height:40px;color:var(--text-primary);border:1px solid var(--border-medium);border-radius:var(--radius-md);font-size:12px;font-family:var(--font-body);cursor:pointer;appearance:none;transition:border-color var(--t-fast)var(--ease);background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L5 5L9 1' stroke='%239A9590' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;outline:none;padding:0 32px 0 10px}.select:focus{border-color:var(--color-sage)}.textarea{background:var(--surface-base);width:100%;min-height:80px;color:var(--text-primary);border:1px solid var(--border-medium);border-radius:var(--radius-md);font-size:12px;font-family:var(--font-body);resize:vertical;transition:border-color var(--t-fast)var(--ease);outline:none;padding:10px 12px;line-height:1.5}.textarea:focus{border-color:var(--color-sage)}.input-date{background:var(--surface-base);height:40px;color:var(--text-primary);border:1px solid var(--border-medium);border-radius:var(--radius-md);font-size:12px;font-family:var(--font-body);width:100%;transition:border-color var(--t-fast)var(--ease);outline:none;padding:0 12px}.input-date:focus{border-color:var(--color-sage)}.input-search{background:var(--surface-base);border:1px solid var(--border-medium);border-radius:var(--radius-pill);height:36px;transition:border-color var(--t-fast)var(--ease);align-items:center;gap:8px;padding:0 14px;display:flex}.input-search:focus-within{border-color:var(--border-strong)}.input-search input{font-size:12px;font-family:var(--font-body);color:var(--text-primary);background:0 0;border:none;outline:none;flex:1}.input-search input::placeholder{color:var(--text-muted)}.input-num{text-align:center;background:var(--surface-base);border:1px solid var(--border-medium);border-radius:var(--radius-md);height:36px;font-size:12px;font-family:var(--font-body);width:100%;transition:border-color var(--t-fast)var(--ease);outline:none;padding:0 8px}.input-num:focus{border-color:var(--color-sage)}.table-wrap{border-radius:var(--radius-lg);border:1px solid var(--border-subtle);background:var(--surface-card);overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:11px}.table thead th{text-align:left;letter-spacing:.09em;text-transform:uppercase;color:var(--text-muted);border-bottom:1px solid var(--border-subtle);white-space:nowrap;background:var(--surface-card);padding:10px 14px;font-size:9px;font-weight:500}.table tbody td{color:var(--text-primary);border-bottom:1px solid var(--border-subtle);vertical-align:middle;padding:11px 14px;font-size:11px}.table tbody tr:last-child td{border-bottom:none}.table tbody tr:hover td{cursor:pointer;background:#26332a05}.table tfoot tr td{background:var(--surface-card);border-top:1px solid var(--border-default);padding:12px 14px;font-weight:500}.table-row-annulled{opacity:.45}.table-row-annulled td{text-decoration:line-through;-webkit-text-decoration-color:var(--text-muted);-webkit-text-decoration-color:var(--text-muted);-webkit-text-decoration-color:var(--text-muted);text-decoration-color:var(--text-muted)}.table-cell-title{color:var(--text-primary);font-size:11px;font-weight:500}.table-cell-sub{color:var(--text-muted);margin-top:1px;font-size:9px}.table-cell-mono{font-family:var(--font-display);color:var(--text-secondary);font-size:11px}.table-cell-provider{color:var(--text-primary);font-size:11px;font-weight:500}.table-cell-provider-id{color:var(--color-aji);margin-top:1px;font-size:9px}[data-tooltip]{position:relative}[data-tooltip]:after{content:attr(data-tooltip);background:var(--color-ink);color:var(--text-inverse);font-family:var(--font-body);border-radius:var(--radius-sm);white-space:nowrap;pointer-events:none;opacity:0;transition:opacity var(--t-fast);z-index:100;padding:4px 8px;font-size:10px;font-weight:500;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}[data-tooltip]:hover:after{opacity:1}.table-actions{align-items:center;gap:6px;display:flex}.table-action{color:var(--color-sage);cursor:pointer;font-size:10px;font-weight:500;font-family:var(--font-body);transition:opacity var(--t-fast);background:0 0;border:none;padding:0}.table-action:hover{opacity:.7}.table-action-danger{color:var(--color-aji)}.list-row{align-items:center;gap:var(--space-2);border-bottom:1px solid var(--border-subtle);transition:background var(--t-fast)var(--ease),transform var(--t-fast)var(--ease);padding:10px 0;display:flex}.list-row:last-child{border-bottom:none}.list-row:hover{transform:translateX(var(--space-2));background:#4a6b5208}.emp-avatar{border-radius:var(--radius-pill);width:36px;height:36px;color:var(--text-inverse);flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:500;display:flex}.emp-name{color:var(--text-primary);font-size:11px;font-weight:500}.emp-role{color:var(--text-muted);font-size:9px}.pay-bar{background:var(--surface-overlay);border-radius:1px;flex:1;height:2px;overflow:hidden}.pay-fill{background:var(--color-sage);height:100%;transition:width 1.2s var(--ease);will-change:width;border-radius:1px}.pay-value{font-family:var(--font-display);color:var(--text-primary);text-align:right;min-width:40px;font-size:12px}.rol-doc-header{background:var(--color-ink);padding:var(--space-4)var(--space-4)var(--space-3);flex-direction:column;align-items:center;gap:2px;display:flex}.rol-doc-header-type{color:#ffffff59;letter-spacing:.12em;text-transform:uppercase;font-size:9px}.rol-doc-header-period{font-family:var(--font-heading);color:#fff;margin-top:2px;font-size:20px;font-weight:500}.rol-doc-header-divider-h{width:100%;height:1px;margin:var(--space-3)0 var(--space-2);background:#ffffff1a}.rol-doc-header-identity{justify-content:space-between;align-items:flex-end;width:100%;display:flex}.rol-doc-header-company-block{flex-direction:column;gap:2px;display:flex}.rol-doc-header-name{font-family:var(--font-heading);color:#ffffffe6;font-size:13px;font-weight:500}.rol-doc-header-sub{color:#ffffff59;font-size:10px}.rol-doc-header-emp-block{flex-direction:column;align-items:flex-end;gap:2px;display:flex}.rol-doc-header-emp-name{font-family:var(--font-heading);color:#ffffffe6;font-size:13px;font-weight:500}.rol-doc-header-emp-sub{color:#ffffff59;font-size:10px}.rol-info-grid{padding:var(--space-3)var(--space-4);background:var(--surface-raised);grid-template-columns:repeat(4,1fr);gap:0;display:grid}.rol-info-cell{flex-direction:column;gap:3px;display:flex}.rol-info-cell+.rol-info-cell{border-left:1px solid var(--border-subtle);padding-left:var(--space-3)}.rol-info-label{color:var(--text-muted);letter-spacing:.07em;text-transform:uppercase;font-size:9px}.rol-info-value{color:var(--text-primary);font-size:12px;font-weight:500}@media (max-width:640px){.rol-info-grid{gap:var(--space-2);grid-template-columns:repeat(2,1fr)}.rol-info-cell+.rol-info-cell{border-left:none;padding-left:0}.rol-info-cell:nth-child(2n){border-left:1px solid var(--border-subtle);padding-left:var(--space-3)}}.rol-cols{border-top:1px dashed var(--border-subtle);grid-template-columns:1fr 1fr;gap:0;display:grid}.rol-col{padding:var(--space-4);flex-direction:column;display:flex}.rol-col .rol-total{margin-top:auto}.rol-col+.rol-col{border-left:1px solid var(--border-subtle)}@media (max-width:640px){.rol-cols{grid-template-columns:1fr}.rol-col+.rol-col{border-left:none;border-top:1px solid var(--border-subtle)}}.rol-total{padding-top:var(--space-3)}.rol-total-label{letter-spacing:.04em;font-size:11px;font-weight:500}.rol-total-value{font-family:var(--font-display);font-size:13px;font-weight:500}.doc-viewer-info{padding:var(--space-3)var(--space-4);border-bottom:1px dashed var(--border-subtle)}.pdf-btn-overlay{top:50%;right:var(--space-4);border-radius:var(--radius-pill);align-items:center;gap:var(--space-1);color:#9fe1cb;font-size:10px;font-family:var(--font-body);cursor:pointer;transition:opacity var(--t-fast)var(--ease);background:#9fe1cb1f;border:1px solid #9fe1cb59;padding:5px 10px;display:flex;position:absolute;transform:translateY(-50%)}.pdf-btn-overlay:hover{opacity:.8}.pdf-btn-overlay:disabled{opacity:.55;cursor:not-allowed}.doc-viewer-info-top{padding:var(--space-2)var(--space-4);border-top:1px dashed var(--border-subtle);justify-content:flex-end;align-items:center;gap:var(--space-3);display:flex}.doc-viewer-footer{padding:var(--space-3)var(--space-4);background:var(--surface-raised);border-top:1px solid var(--border-subtle);justify-content:center;align-items:center;display:flex}.line-item{justify-content:space-between;align-items:baseline;gap:var(--space-2);border-bottom:1px solid var(--border-subtle);padding:8px 0;font-size:11px;display:flex}.line-item:last-child{border-bottom:none}.line-item-code{color:var(--text-muted);letter-spacing:.06em;margin-right:var(--space-2);font-size:9px;font-weight:500}.line-item-label{color:var(--text-secondary);flex:1}.line-item-sub{color:var(--text-muted);margin-top:1px;font-size:9px}.line-item-value{font-family:var(--font-display);white-space:nowrap;font-size:12px;font-weight:500}.line-item-value.positive{color:var(--color-forest)}.line-item-value.negative{color:var(--color-aji)}.cat-bar-row{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:7px 0;display:flex}.cat-bar-row:last-child{border-bottom:none}.cat-bar-label{color:var(--text-primary);flex:1;font-size:11px}.cat-bar-track{background:var(--surface-overlay);height:2px;margin:0 var(--space-3);border-radius:1px;flex:2;overflow:hidden}.cat-bar-fill{background:var(--color-forest);border-radius:1px;height:100%}.cat-bar-pct{color:var(--text-muted);white-space:nowrap;font-size:10px}.activity-row{border-bottom:1px solid var(--border-subtle);align-items:center;gap:10px;padding:9px 0;display:flex}.activity-row:last-child{border-bottom:none}.activity-icon{border-radius:var(--radius-pill);flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:12px;display:flex}.activity-title{color:var(--text-primary);font-size:11px;font-weight:500}.activity-meta{color:var(--text-muted);margin-top:1px;font-size:9px}.activity-amount{font-family:var(--font-display);color:var(--text-primary);margin-left:auto;font-size:12px}.accordion{border-radius:var(--radius-lg);border:1px solid var(--border-subtle);overflow:hidden}.accordion-row{cursor:pointer;border-bottom:1px solid var(--border-subtle);transition:background var(--t-fast)var(--ease);justify-content:space-between;align-items:center;padding:13px 16px;display:flex}.accordion-row:last-child{border-bottom:none}.accordion-row:hover{background:var(--surface-card-hover)}.accordion-row.is-open{background:var(--color-ink)}.accordion-row.is-open .accordion-label{color:#fff}.accordion-row.is-open .accordion-sub{color:#fff6}.accordion-row.is-open .accordion-value{color:#fff}.accordion-label{color:var(--text-primary);font-size:11px;font-weight:500}.accordion-sub{color:var(--text-muted);margin-top:2px;font-size:9px}.accordion-value{font-family:var(--font-display);font-size:14px;font-weight:500}.accordion-chevron{color:var(--color-aji);opacity:.7;margin-left:var(--space-2);transition:transform var(--t-med)var(--ease),opacity var(--t-fast)var(--ease);flex-shrink:0}.accordion-row.is-open .accordion-chevron{opacity:1;transform:rotate(180deg)}.pill-row{flex-wrap:wrap;gap:4px;display:flex}.pill{border-radius:var(--radius-pill);cursor:pointer;font-size:10px;font-family:var(--font-body);color:var(--text-muted);border:1px solid var(--border-medium);transition:all var(--t-fast)var(--ease);white-space:nowrap;background:0 0;padding:5px 12px}.pill:hover{color:var(--text-primary);border-color:var(--border-strong)}.pill:active{transform:scale(.93)}.pill.is-active{background:var(--surface-base);border-color:var(--border-medium);color:var(--text-primary);font-weight:500}.pill.is-active.pill-ai{background:var(--color-ai-bg);border-color:var(--color-ai-bdr);color:var(--color-violet)}.split-panel{border-radius:var(--radius-lg);border:1px solid var(--border-subtle);grid-template-columns:1fr 1fr;display:grid;overflow:hidden}.split-pane{padding:var(--space-4);cursor:pointer;transition:background var(--t-fast)var(--ease)}.split-pane:first-child{border-right:1px solid var(--border-subtle)}.split-pane.is-active{background:var(--color-ai-bg);border-color:var(--color-ai-bdr)}.split-pane-title{color:var(--text-primary);align-items:center;gap:6px;margin-bottom:3px;font-size:13px;font-weight:500;display:flex}.split-pane.is-active .split-pane-title{color:var(--color-violet)}.split-pane-sub{color:var(--text-muted);font-size:10px}.split-pane.is-active-payroll{background:var(--color-positive-bg);border-color:var(--color-positive-bdr)}.split-pane.is-active-payroll .split-pane-title{color:var(--color-forest)}.empty-state{text-align:center;justify-content:center;align-items:center;gap:var(--space-3);background:var(--color-ink);border-radius:var(--radius-lg);flex-direction:column;padding:48px 32px;display:flex}.empty-state-icon{color:#ffffff38}.empty-state-title{font-family:var(--font-heading);color:#ffffffd9;font-size:16px;font-weight:500}.empty-state-desc{color:#ffffff6b;max-width:300px;font-size:12px;line-height:1.6}.empty-state-light{text-align:center;align-items:center;gap:var(--space-3);flex-direction:column;padding:40px 32px;display:flex}.empty-state-light .empty-state-title{color:var(--text-primary)}.empty-state-light .empty-state-desc{color:var(--text-muted)}.ai-insight{border-radius:var(--radius-lg);background:var(--color-ai-bg);border:1px solid var(--color-ai-bdr);align-items:flex-start;gap:11px;padding:13px 15px;display:flex}.ai-insight-icon{border-radius:var(--radius-sm);background:var(--color-violet);flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.ai-insight-label{font-family:var(--font-heading);color:var(--color-violet);margin-bottom:3px;font-size:10px;font-style:italic;font-weight:500}.ai-insight-text{color:#5240c0;font-size:11px;line-height:1.58}.ai-insight-cta{border-radius:var(--radius-pill);color:var(--color-violet);border:1px solid var(--color-ai-bdr);cursor:pointer;white-space:nowrap;background:#ffffffb3;align-self:center;margin-left:auto;padding:5px 12px;font-size:10px}.ai-nudge{background:var(--color-ai-bg);border:1px solid var(--color-ai-bdr);border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:7px;padding:8px 10px;display:flex;position:relative;overflow:hidden}.ai-nudge-text{color:var(--color-violet);flex:1;font-size:10px}.ai-nudge-cta{color:var(--color-violet);white-space:nowrap;font-size:10px;font-weight:500}.sticky-bar{padding:10px var(--content-pad);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);justify-content:space-between;align-items:center;gap:var(--space-4);z-index:50;background:#26332af5;display:flex;position:sticky;bottom:0;left:0;right:0}.sticky-bar-info{gap:var(--space-5);flex-wrap:wrap;display:flex}.sticky-bar-stat{color:#ffffff80;font-size:10px}.sticky-bar-stat strong{color:#ffffffe6;font-weight:500}.sticky-bar-actions{gap:var(--space-2);flex-shrink:0;display:flex}.sticky-bar .btn-ghost{color:#fff9;border-color:#ffffff26}.sticky-bar .btn-primary{color:#fff;background:#ffffff26;border:1px solid #fff3}.sticky-bar .btn-primary:hover{background:#ffffff38}.grid-2{gap:var(--space-3);grid-template-columns:1fr 1fr;display:grid}.grid-3{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.grid-4{gap:var(--space-2);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.grid-kpi{gap:var(--space-2);margin-bottom:var(--space-3);grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;display:grid}.grid-kpi-summary{gap:var(--space-2);margin-bottom:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;display:grid}.grid-6{gap:var(--space-2);grid-template-columns:repeat(6,minmax(0,1fr));align-items:stretch;display:grid}.grid-7{gap:var(--space-2);grid-template-columns:repeat(7,minmax(0,1fr));align-items:stretch;display:grid}.grid-8{gap:var(--space-2);grid-template-columns:repeat(8,minmax(0,1fr));align-items:stretch;display:grid}.grid-charts{gap:var(--space-2);grid-template-columns:3fr 2fr;display:grid}.flex{display:flex}.flex-center{align-items:center;display:flex}.flex-between{justify-content:space-between;align-items:center;display:flex}.flex-col{flex-direction:column;display:flex}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.mt-2{margin-top:var(--space-2)}.mt-3{margin-top:var(--space-3)}.mt-4{margin-top:var(--space-4)}.mb-2{margin-bottom:var(--space-2)}.mb-3{margin-bottom:var(--space-3)}.divider{background:var(--border-subtle);height:1px;margin:var(--space-2)0}.w-full{width:100%}@keyframes rotate360{to{transform:rotate(360deg)}}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}@keyframes slideDown{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@keyframes checkPop{0%{transform:scale(.5)}60%{transform:scale(1.2)}to{transform:scale(1)}}@keyframes badgePop{0%{transform:scale(0)}60%{transform:scale(1.25)}to{transform:scale(1)}}@keyframes aiShimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes breathe{0%,to{border-color:var(--color-ai-bdr)}50%{border-color:#7b61ff47}}.anim-slide-down{animation:slideDown .22s var(--ease)}.anim-badge-pop{animation:badgePop .38s var(--ease)}@media (max-width:1024px){.grid-kpi,.grid-kpi-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-6{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-7,.grid-8{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-charts,.grid-2{grid-template-columns:1fr}}@media (max-width:640px){:root{--content-pad:var(--content-pad-mobile)}.app-shell{grid-template-rows:var(--topbar-h)1fr;grid-template-columns:1fr;height:100dvh}.topbar{grid-column:1/-1}.sidebar{z-index:210;width:min(280px,82vw);transition:transform .3s var(--ease);grid-row:unset;grid-column:unset;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.sidebar.is-open{transform:translate(0)}.app-shell.collapsed .sidebar-logo{justify-content:flex-start;padding:0 8px 0 14px}.app-shell.collapsed .sidebar-logo-inner{opacity:1;flex:1;width:auto}.sidebar-logo .collapse-btn{display:none}.app-shell.collapsed .sidebar.is-open .nav-item{justify-content:flex-start;gap:14px;width:auto;height:auto;padding:7px 10px}.app-shell.collapsed .sidebar.is-open .nav-item .nav-text{display:block}.app-shell.collapsed .sidebar.is-open .nav-item.active:before{left:0}.app-shell.collapsed .sidebar.is-open .nav-group-btn{justify-content:flex-start;gap:14px;width:auto;height:auto;padding:7px 10px}.app-shell.collapsed .sidebar.is-open .nav-group-btn .nav-text,.app-shell.collapsed .sidebar.is-open .nav-group-btn .nav-chevron{display:block}.app-shell.collapsed .sidebar.is-open .nav-group-btn.has-active:before{left:0}.app-shell.collapsed .sidebar.is-open .nav-children{display:block!important}.app-shell.collapsed .sidebar.is-open .nav-label{letter-spacing:.08em;text-align:left;width:auto;padding:16px 10px 4px;font-size:9px}.app-shell.collapsed .sidebar.is-open .nav-divider{width:auto;margin:4px 8px}.app-shell.collapsed .sidebar.is-open .sidebar-nav{align-items:stretch;padding:8px}.app-shell.collapsed .sidebar.is-open .sidebar-footer{justify-content:flex-start;padding:10px 12px}.app-shell.collapsed .sidebar.is-open .sidebar-footer-info,.app-shell.collapsed .sidebar.is-open .sidebar-footer-btn{display:flex}.app-shell.collapsed .sidebar.is-open .nav-badge{min-width:18px;height:18px;padding:0 5px;font-size:10px;position:absolute;top:auto;right:8px}.main-content{grid-column:1;padding-bottom:80px}.page-header{align-items:center;gap:var(--space-2)}.page-title{font-size:18px}.page-header-desktop{display:none}.grid-kpi,.grid-6,.grid-7,.grid-8{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-charts,.grid-3,.grid-4{grid-template-columns:1fr}.sticky-bar{flex-direction:column;align-items:stretch}.hidden-mobile{display:none!important}.payroll-split{flex-direction:column;min-height:auto}.ventas-cal-col{width:100%!important;position:static!important;top:auto!important}.ventas-cal-card{max-width:none}.payroll-form-col{width:100%!important}.payroll-split .payroll-emp-list{border-right:none;border-bottom:1px solid var(--border-subtle);width:100%;max-height:180px}.payroll-split .payroll-panel{width:100%;min-height:auto}.payroll-input-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.split-pane-sub{display:none}.payroll-toolbar{align-items:stretch;gap:var(--space-3);flex-direction:column}.payroll-toolbar>*{justify-content:space-between}.payroll-action-bar{align-items:stretch;gap:var(--space-2);flex-direction:column}.payroll-action-bar-meta{flex:1}.payroll-action-bar-actions{justify-content:flex-end}}.auth-page{background:var(--sidebar-gradient);min-height:100dvh;padding:var(--space-5);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.auth-page:before,.auth-page:after{content:"";filter:blur(60px);pointer-events:none;border-radius:50%;position:absolute}.auth-page:before{background:var(--color-aji);opacity:.08;width:200px;height:200px;top:10%;left:-60px}.auth-page:after{background:var(--color-violet);opacity:.06;width:260px;height:260px;bottom:5%;right:-80px}.auth-container{z-index:1;align-items:center;gap:var(--space-6);flex-direction:column;width:100%;max-width:400px;display:flex;position:relative}.auth-logo-block{align-items:center;gap:var(--space-2);flex-direction:column;display:flex}.auth-tagline{font-family:var(--font-body);color:#ffffff59;letter-spacing:.04em;font-size:11px}.auth-card{background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);width:100%;padding:var(--space-8)var(--space-6)}.auth-card-header{text-align:center;margin-bottom:var(--space-6)}.auth-card-title{font-family:var(--font-heading);color:var(--text-primary);margin-bottom:4px;font-size:18px;font-weight:500}.auth-card-sub{color:var(--text-muted);font-size:12px}.auth-form{gap:var(--space-4);flex-direction:column;display:flex}.auth-error{color:var(--color-aji);background:var(--color-warning-bg);border:1px solid var(--color-warning-bdr);border-radius:var(--radius-sm);text-align:center;padding:8px 12px;font-size:11px}.auth-error-lg{font-size:var(--text-sm);padding:12px 16px;line-height:1.5}.auth-success{color:var(--color-forest);background:var(--color-positive-bg);border:1px solid var(--color-positive-bdr);border-radius:var(--radius-sm);text-align:center;padding:12px 14px;font-size:12px;line-height:1.5}.auth-footer{text-align:center;margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--border-subtle);color:var(--text-muted);font-size:11px}.auth-link{color:var(--color-forest);transition:opacity var(--t-fast);font-weight:500;text-decoration:none}.auth-link:hover{opacity:.7}.auth-role-badge{background:var(--surface-raised);border:1px solid var(--border-subtle);border-radius:var(--radius-md);margin-bottom:var(--space-2);padding:10px 14px}.auth-role-badge-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:2px;font-size:10px}.auth-role-badge-value{color:var(--text-primary);font-size:13px;font-weight:500}.auth-accent{height:2px;margin-top:var(--space-5);background:linear-gradient(90deg,var(--color-aji),var(--color-forest)50%,var(--color-violet));border-radius:1px}@keyframes accentFill{0%{transform:translate(-100%)}to{transform:translate(0)}}.auth-accent-fill{height:2px;margin-top:var(--space-5);background:var(--surface-overlay);border-radius:1px;position:relative;overflow:hidden}.auth-accent-fill:after{content:"";background:linear-gradient(90deg,var(--color-aji),var(--color-forest)50%,var(--color-violet));animation:1.2s cubic-bezier(.25,.46,.45,.94) forwards accentFill;position:absolute;inset:0;transform:translate(-100%)}.auth-card:has(.auth-success-state) .auth-footer{display:none}.payroll-action-bar{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.payroll-action-bar-meta{align-items:center;gap:var(--space-2);flex:1;min-width:0;display:flex}.payroll-action-bar-actions{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.payroll-split{gap:var(--space-3);display:flex}.ventas-cal-col{width:260px;top:var(--space-4);flex-shrink:0;position:sticky}.payroll-form-col{flex-shrink:0;width:360px}.payroll-panel{flex:1;min-width:0}.payroll-emp-list{border-right:1px solid var(--border-subtle);background:var(--surface-card);flex-shrink:0;width:270px;overflow-y:auto}.rubros-split{height:calc(100dvh - var(--topbar-h) - var(--content-pad)*2);border-radius:var(--radius-lg);border:1px solid var(--border-subtle);background:var(--surface-card);display:flex;overflow:hidden}.rubros-nav{border-right:1px solid var(--border-subtle);background:var(--surface-raised);flex-shrink:0;width:260px;overflow-y:auto}.rubros-nav-section{padding:var(--space-4)var(--space-3)var(--space-2)}.rubros-nav-section-custom{padding-top:var(--space-5)}.rubros-nav-item{align-items:center;gap:var(--space-2);text-align:left;width:100%;padding:var(--space-2)var(--space-3);cursor:pointer;font-family:var(--font-body);color:var(--text-secondary);transition:all var(--t-fast)var(--ease);background:0 0;border:none;border-left:3px solid #0000;font-size:13px;display:flex}.rubros-nav-item:hover{background:var(--surface-overlay);color:var(--text-primary)}.rubros-nav-item.is-active{color:var(--text-primary);background:var(--surface-overlay)}.rubros-nav-item.is-active-legal{border-left-color:var(--color-forest);background:var(--color-positive-bg)}.rubros-nav-item.is-active-custom{border-left-color:var(--color-amber);background:var(--color-info-bg)}.rubros-nav-item-inactive{opacity:.5}.rubros-nav-label{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.rubros-nav-code{color:var(--text-muted);font-family:var(--font-display);flex-shrink:0;margin-left:auto;font-size:10px}.rubros-nav-empty{padding:var(--space-2)var(--space-3);color:var(--text-muted);font-size:12px}.rubros-nav-new{color:var(--color-amber)}.rubros-nav-new-icon{font-size:16px;line-height:1}.rubros-content{padding:var(--space-6);flex:1;overflow-y:auto}.rubros-empty{justify-content:center;align-items:center;height:100%;display:flex}.rubros-detail,.rubros-editor{max-width:480px}.rubros-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px;display:inline-block}.rubros-dot-pos{background:var(--color-forest)}.rubros-dot-neg{background:var(--color-aji)}.rubros-dot-custom{background:var(--color-amber)}.rubros-preview{background:var(--surface-raised);border:1px solid var(--border-medium);border-radius:var(--radius-md);padding:var(--space-4)}.rubros-preview-amount{font-family:var(--font-display);letter-spacing:-.3px;font-size:22px;font-weight:500}.rubros-amount-pos{color:var(--color-forest)}.rubros-amount-neg{color:var(--color-aji)}.rubros-delete-btn{align-items:center;gap:var(--space-2);margin-left:auto;display:flex}.rubros-toast{bottom:var(--space-6);right:var(--space-6);padding:var(--space-2)var(--space-4);border-radius:var(--radius-pill);font-family:var(--font-body);background:var(--color-forest);color:var(--text-inverse);z-index:50;font-size:12px;font-weight:500;position:fixed}@media (max-width:640px){.rubros-split{flex-direction:column;height:auto}.rubros-nav{border-right:none;border-bottom:1px solid var(--border-subtle);width:100%}.rubros-content{padding:var(--space-4)}}.nav-label{letter-spacing:.08em;text-transform:uppercase;color:var(--sb-text-muted);-webkit-user-select:none;user-select:none;white-space:nowrap;font-size:9px;font-weight:500;font-family:var(--font-body);padding:16px 10px 4px;overflow:hidden}.nav-label:first-child{padding-top:6px}.nav-label-short{display:none}.app-shell.collapsed .nav-label{letter-spacing:.1em;text-align:center;width:100%;padding:10px 0 2px;font-size:7px}.app-shell.collapsed .nav-label-full{display:none}.app-shell.collapsed .nav-label-short{display:inline}.nav-item{border-radius:var(--radius-sm);color:var(--sb-text);cursor:pointer;white-space:nowrap;font-size:12.5px;font-weight:400;font-family:var(--font-body);border:1px solid #0000;align-items:center;gap:14px;margin-top:2px;padding:7px 10px;text-decoration:none;transition:all .12s;display:flex;position:relative;overflow:hidden}.nav-item:hover{background:var(--sb-surface-hover);color:#fff}.nav-item.active{background:var(--sb-surface-active);color:#fff;border-color:var(--sb-border);font-weight:500}.nav-item.active:before{content:"";background:var(--color-forest);border-radius:0 2px 2px 0;width:3px;height:16px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.app-shell.collapsed .nav-item{justify-content:center;gap:0;width:38px;height:38px;padding:0}.app-shell.collapsed .nav-item .nav-text{display:none}.app-shell.collapsed .nav-item.active:before{left:-1px}.nav-icon{width:16px;height:16px;color:inherit;flex-shrink:0;justify-content:center;align-items:center;display:flex}.nav-text{flex:1}.nav-badge{border-radius:var(--radius-pill);background:var(--color-aji);color:#fff;flex-shrink:0;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:10px;font-weight:500;line-height:1;display:flex;position:absolute;right:34px}.app-shell.collapsed .nav-badge{min-width:14px;height:14px;padding:0 3px;font-size:8px;top:2px;right:2px}.nav-group-badge{border-radius:var(--radius-pill);background:var(--color-aji);color:#fff;flex-shrink:0;justify-content:center;align-items:center;min-width:16px;height:16px;margin-right:-10px;padding:0 4px;font-size:9px;font-weight:500;line-height:1;display:flex}.app-shell.collapsed .nav-group-badge{min-width:14px;height:14px;padding:0 3px;font-size:8px;position:absolute;top:4px;right:4px}.app-shell.collapsed .sidebar.is-open .nav-group-badge{min-width:16px;height:16px;padding:0 4px;font-size:9px;position:absolute;top:auto;right:8px}.nav-child-badge{border-radius:var(--radius-pill);background:var(--color-aji);color:#fff;flex-shrink:0;justify-content:center;align-items:center;min-width:16px;height:16px;margin-left:auto;padding:0 4px;font-size:9px;font-weight:500;line-height:1;display:flex}.nav-group-btn{border-radius:var(--radius-sm);width:100%;color:var(--sb-text);cursor:pointer;text-align:left;white-space:nowrap;font-size:12.5px;font-weight:400;font-family:var(--font-body);background:0 0;border:1px solid #0000;align-items:center;gap:14px;margin-top:2px;padding:7px 10px;transition:all .12s;display:flex;position:relative;overflow:hidden}.nav-group-btn:hover{background:var(--sb-surface-hover);color:#fff}.nav-group-btn.has-active{color:#fff;border-color:#0000;font-weight:500}.nav-group-btn.has-active:before{content:"";background:var(--color-forest);border-radius:0 2px 2px 0;width:3px;height:16px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.app-shell.collapsed .nav-group-btn{justify-content:center;gap:0;width:38px;height:38px;padding:0}.app-shell.collapsed .nav-group-btn .nav-text,.app-shell.collapsed .nav-group-btn .nav-chevron{display:none}.app-shell.collapsed .nav-group-btn.has-active:before{left:-1px}.nav-chevron{width:14px;height:14px;color:var(--sb-text-secondary);flex-shrink:0;margin-left:auto;transition:transform .2s}.nav-chevron.open{transform:rotate(180deg)}.nav-children{animation:slideDown .18s var(--ease);margin-left:18px;padding:2px 0;position:relative}.app-shell.collapsed .nav-children{display:none!important}.nav-child{border-radius:var(--radius-sm);font-size:12px;font-family:var(--font-body);color:var(--sb-text);cursor:pointer;white-space:nowrap;align-items:center;gap:8px;margin-left:14px;padding:5px 10px;text-decoration:none;transition:background .12s,color .12s;display:flex;position:relative}.nav-child:before{content:"";border-left:1px solid var(--tree-color);border-bottom:1px solid var(--tree-color);border-bottom-left-radius:8px;width:10px;height:calc(50% + 12px);position:absolute;bottom:50%;left:-14px}.nav-child:first-child:before{height:calc(50% + 4px)}.nav-child.active:before{border-left-color:var(--color-forest);border-bottom-color:var(--color-forest)}.nav-child:hover{background:var(--sb-surface-hover);color:#fff}.nav-child.active{background:var(--sb-surface-active);color:#fff;font-weight:500}.nav-child.soon{opacity:.3;pointer-events:none}.soon-chip{letter-spacing:.04em;text-transform:uppercase;color:var(--color-violet);border-radius:var(--radius-pill);background:#7b61ff1f;margin-left:auto;padding:1px 5px;font-size:8px}.nav-divider{background:var(--sb-border);height:1px;margin:6px 10px}.app-shell.collapsed .nav-divider{width:24px;margin:4px auto}.nav-tip{background:var(--color-ink);color:#fff;border-radius:var(--radius-sm);white-space:nowrap;z-index:300;pointer-events:none;padding:5px 10px;font-size:11px;font-weight:500;display:none;position:absolute;top:50%;left:calc(100% + 10px);transform:translateY(-50%);box-shadow:0 2px 8px #0000004d}.nav-tip:before{content:"";border:4px solid #0000;border-right-color:var(--color-ink);border-left:none;position:absolute;top:50%;left:-4px;transform:translateY(-50%)}.app-shell.collapsed .nav-item:hover .nav-tip,.app-shell.collapsed .nav-group-btn:hover .nav-tip{display:block}.sb-flyout-panel{z-index:400;border-radius:var(--radius-md);opacity:0;pointer-events:none;min-width:190px;transition:opacity .14s var(--ease),transform .14s var(--ease);background:#26332a;padding:5px;position:fixed;transform:translate(-6px);box-shadow:0 4px 16px #0006,0 12px 32px #00000040}.sb-flyout-panel.visible{opacity:1;pointer-events:all;transform:translate(0)}.sb-flyout-panel:before{content:"";border:6px solid #0000;border-right-color:#26332a;position:absolute;top:14px;right:100%}.sb-flyout-header{letter-spacing:.09em;text-transform:uppercase;color:var(--sb-text-muted);border-bottom:1px solid var(--sb-border);font-size:9px;font-weight:500;font-family:var(--font-body);margin-bottom:3px;padding:5px 8px 7px}.sb-flyout-panel .nav-child{margin-left:0}.sb-flyout-panel .nav-child:before{display:none}.sidebar-footer{border-top:1px solid var(--sb-border);flex-shrink:0;align-items:center;gap:10px;padding:12px 14px;display:flex;overflow:hidden}.app-shell.collapsed .sidebar-footer{flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:8px 0}.sidebar-footer-link{flex:1;align-items:center;gap:10px;min-width:0;text-decoration:none;display:flex}.app-shell.collapsed .sidebar-footer-link{flex:0 0 38px;justify-content:center;gap:0;width:38px;height:38px}.sidebar-footer-btn{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--sb-text-muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;transition:all .12s;display:flex}.app-shell.collapsed .sidebar-footer-btn{width:34px;height:26px;display:flex}.sidebar-footer-btn:hover{background:var(--sb-surface-hover);color:var(--sb-text-secondary)}.sidebar-footer-avatar{background:var(--color-forest);color:#fff;width:30px;height:30px;font-size:10px;font-weight:500;font-family:var(--font-body);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.sidebar-footer-info{flex:1;min-width:0}.app-shell.collapsed .sidebar-footer-info{display:none}.sidebar-footer-name{color:var(--sb-text);white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:500;font-family:var(--font-body);overflow:hidden}.sidebar-footer-meta{color:var(--sb-text-muted);align-items:center;gap:4px;margin-top:0;font-size:10px;display:flex}.plan-chip{text-transform:uppercase;letter-spacing:.06em;border-radius:var(--radius-pill);color:#4a6b52f2;background:#4a6b5240;padding:1px 5px;font-size:8px;font-weight:500}.sb-overlay{z-index:200;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;display:none;position:fixed;inset:0}.sb-overlay.visible{display:block}@media (min-width:640px){.sb-overlay{display:none!important}}.mobile-bottom-nav{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:190;padding:6px 0 env(safe-area-inset-bottom,6px);background:#26332af7;border-top:1px solid #ffffff14;display:none;position:fixed;bottom:0;left:0;right:0}.mobile-bottom-nav-inner{justify-content:space-around;align-items:center;display:flex}.mobile-bottom-nav-item{cursor:pointer;color:#ffffff73;font-size:9px;font-family:var(--font-body);transition:color var(--t-fast)var(--ease);background:0 0;border:none;flex-direction:column;align-items:center;gap:2px;padding:4px 8px;text-decoration:none;display:flex}.mobile-bottom-nav-item.active{color:#fffffff2}.mobile-bottom-nav-item:hover{color:#ffffffb3}@media (max-width:639px){.mobile-bottom-nav{display:block}}.topbar-hamburger{display:none!important}.period-short{display:none}@media (max-width:639px){.topbar-hamburger{display:flex!important}.topbar-brand{display:none!important}.period-full{display:none}.period-short{display:inline}.topbar-biz-name{display:none!important}}.rol-toggle-bar{background:var(--surface-raised);border:1px solid var(--border-medium);border-radius:var(--radius-md);margin-top:var(--space-4);transition:border-color var(--t-fast)var(--ease),background var(--t-fast)var(--ease);align-items:center;gap:12px;padding:10px 16px;display:flex}.rol-toggle-bar:has(.rol-switch input:checked){border-color:var(--color-positive-bdr);background:var(--color-positive-bg)}.rol-switch{cursor:pointer;align-items:center;display:inline-flex;position:relative}.rol-switch input{opacity:0;width:0;height:0;position:absolute}.rol-switch-track{background:var(--surface-overlay);width:36px;height:20px;transition:background var(--t-med)var(--ease);border-radius:10px;flex-shrink:0;position:relative}.rol-switch input:checked+.rol-switch-track{background:var(--color-forest)}.rol-switch-thumb{width:16px;height:16px;transition:transform var(--t-med)var(--ease);background:#fff;border-radius:50%;position:absolute;top:2px;left:2px}.rol-switch input:checked+.rol-switch-track .rol-switch-thumb{transform:translate(16px)}.rol-switch input:disabled+.rol-switch-track{opacity:.5;cursor:not-allowed}.rol-toggle-label{color:var(--text-primary);-webkit-user-select:none;user-select:none;font-size:12px;font-weight:500}.rol-toggle-hint{color:var(--text-muted);margin-left:auto;font-size:10px}.rol-toggle-badge{border-radius:var(--radius-pill);text-transform:uppercase;letter-spacing:.04em;padding:2px 8px;font-size:9px;font-weight:500}.rol-toggle-badge-on{background:var(--color-positive-bg);color:var(--color-forest);border:1px solid var(--color-positive-bdr)}.rol-toggle-badge-off{background:var(--surface-overlay);color:var(--text-muted);border:1px solid var(--border-subtle)}.bs-modal-overlay{z-index:300;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:var(--space-4);background:#26332a73;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.bs-modal{background:var(--surface-card);border:1px solid var(--border-medium);border-radius:var(--radius-xl);flex-direction:column;width:100%;max-width:480px;max-height:90vh;display:flex;overflow:hidden}.bs-modal-header{padding:var(--space-4)var(--space-5);border-bottom:1px solid var(--border-subtle);font-family:var(--font-heading);color:var(--text-primary);flex-shrink:0;justify-content:space-between;align-items:center;font-size:15px;font-weight:500;display:flex}.bs-modal-body{padding:var(--space-5);gap:var(--space-4);flex-direction:column;flex:1;display:flex;overflow-y:auto}.bs-modal-footer{padding:var(--space-3)var(--space-5);border-top:1px solid var(--border-subtle);justify-content:flex-end;align-items:center;gap:var(--space-2);background:var(--surface-raised);flex-shrink:0;display:flex}.skeleton{background:var(--surface-overlay);border-radius:var(--radius-md);position:relative;overflow:hidden}.skeleton:after{content:"";background:linear-gradient(90deg,transparent 25%,var(--surface-raised)50%,transparent 75%);animation:1.5s ease-in-out infinite skeleton-shimmer;position:absolute;inset:0}@keyframes skeleton-shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.skeleton-text{height:14px;margin-bottom:8px}.skeleton-text-lg{height:20px;margin-bottom:10px}.skeleton-card{height:120px}.skeleton-table-row{height:44px;margin-bottom:4px}.skeleton-pill{border-radius:var(--radius-lg);height:56px}.skeleton-circle{border-radius:50%}.ctx-menu{display:inline-flex;position:relative}.ctx-menu-trigger{border-radius:var(--radius-pill);width:32px;height:32px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;transition:background .12s,color .12s;display:inline-flex}.ctx-menu-trigger:hover,.ctx-menu-trigger[data-open=true]{background:var(--surface-raised);color:var(--text-primary)}.ctx-menu-panel{background:var(--surface-card);border:1px solid var(--border-subtle);z-index:200;border-radius:10px;min-width:168px;animation:.12s ctx-menu-in;position:absolute;top:calc(100% + 6px);right:0;overflow:hidden;box-shadow:0 8px 24px #0000001a,0 2px 6px #0000000f}@keyframes ctx-menu-in{0%{opacity:0;transform:translateY(-4px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.ctx-menu-item{width:100%;min-height:44px;color:var(--text-primary);font-family:var(--font-body);text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:10px;padding:10px 14px;font-size:13px;font-weight:400;transition:background .1s;display:flex}.ctx-menu-item:hover{background:var(--surface-raised)}.ctx-menu-item:active{background:var(--surface-overlay)}.ctx-menu-item.danger{color:var(--color-aji)}.ctx-menu-item.danger:hover{background:#d4622a0f}.ctx-menu-icon{opacity:.45;flex-shrink:0;align-items:center;display:flex}.ctx-menu-item.danger .ctx-menu-icon{opacity:1}.ctx-menu-separator{background:var(--border-subtle);height:1px;margin:2px 0}.portal-topbar{background:var(--surface-base);z-index:10;flex-shrink:0;justify-content:space-between;align-items:center;padding:14px 20px;display:flex;position:sticky;top:0}.portal-topbar-logo{opacity:.7;height:16px}.portal-topbar-right{align-items:center;gap:10px;display:flex}.portal-admin-link{color:var(--text-muted);border:1px solid var(--border-subtle);border-radius:var(--radius-pill);align-items:center;gap:4px;padding:4px 10px;font-size:11px;text-decoration:none;transition:all .15s;display:inline-flex}.portal-admin-link:hover{border-color:var(--border-default);color:var(--text-secondary)}.portal-avatar-circle{background:var(--color-forest);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:11px;font-weight:500;text-decoration:none;display:flex}.portal-bottom-nav{border-top:1px solid var(--border-subtle);z-index:100;background:#fff;justify-content:space-around;align-items:stretch;height:60px;display:flex;position:fixed;bottom:0;left:0;right:0}.portal-bottom-nav-item{color:var(--text-muted);font-size:10px;font-family:var(--font-body);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;text-decoration:none;transition:color .15s;display:flex;position:relative}.portal-bottom-nav-item.active{color:var(--color-forest)}.portal-bottom-nav-item.active:before{content:"";background:var(--color-forest);border-radius:0 0 2px 2px;width:24px;height:2px;position:absolute;top:0;left:50%;transform:translate(-50%)}.portal-content{flex-direction:column;flex:1;gap:16px;padding:0 20px 20px;display:flex}.portal-badge-card{border-radius:var(--radius-xl);color:#fff;background:linear-gradient(135deg,#26332a 0%,#1d2820 50%,#2a3d30 100%);border:none;padding:24px 20px;position:relative;overflow:hidden}.portal-badge-card:before{content:"";background:#4a6b5226;border-radius:50%;width:120px;height:120px;position:absolute;top:-40px;right:-40px}.portal-badge-card:after{content:"";background:#4a6b5214;border-radius:50%;width:80px;height:80px;position:absolute;bottom:-30px;left:-20px}.portal-badge-name{font-family:var(--font-heading);z-index:1;margin-bottom:4px;font-size:20px;font-weight:500;position:relative}.portal-badge-role{color:#fff9;z-index:1;margin-bottom:16px;font-size:13px;position:relative}.portal-badge-meta{z-index:1;gap:16px;display:flex;position:relative}.portal-badge-meta-item{color:#ffffff8c;align-items:center;gap:6px;font-size:12px;display:flex}.portal-badge-divider{z-index:1;background:#ffffff14;height:1px;margin:16px 0;position:relative}.portal-badge-pay-row{z-index:1;justify-content:space-between;align-items:flex-end;display:flex;position:relative}.portal-badge-pay-label{color:#fff6;text-transform:uppercase;letter-spacing:.05em;margin-bottom:2px;font-size:11px}.portal-badge-pay-amount{font-family:var(--font-display);color:#fff;font-size:28px;font-weight:400}.portal-badge-pay-period{color:#ffffff73;font-size:12px}.portal-metric-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.portal-metric-card{background:var(--surface-card);border-radius:var(--radius-lg);border:1px solid var(--border-subtle);padding:14px 16px}.portal-metric-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;margin-bottom:6px;font-size:11px}.portal-metric-value{font-family:var(--font-display);color:var(--text-primary);font-size:22px;line-height:1.1}.portal-metric-value.forest{color:var(--color-forest)}.portal-metric-value.aji{color:var(--color-aji)}.portal-metric-sub{color:var(--text-muted);margin-top:2px;font-size:11px}.portal-quick-actions{-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:10px;padding:2px 0;display:flex;overflow-x:auto}.portal-quick-actions::-webkit-scrollbar{display:none}.portal-quick-action{background:var(--surface-card);border-radius:var(--radius-lg);border:1px solid var(--border-subtle);cursor:pointer;color:var(--text-primary);flex-direction:column;flex-shrink:0;align-items:center;gap:8px;min-width:100px;padding:14px 18px;text-decoration:none;transition:all .15s;display:flex}.portal-quick-action:hover{background:var(--surface-card-hover);transform:translateY(-1px)}.portal-quick-action-icon{border-radius:var(--radius-md);justify-content:center;align-items:center;width:36px;height:36px;display:flex}.portal-quick-action-icon.forest{color:var(--color-forest);background:#4a6b521f}.portal-quick-action-icon.amber{color:var(--color-amber);background:#c8963a1f}.portal-quick-action-icon.sage{color:var(--color-sage);background:#7a8c7e1f}.portal-quick-action-label{text-align:center;font-size:12px;font-weight:450;line-height:1.3}.portal-section-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:10px;font-size:11px;font-weight:500}.portal-timeline-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.portal-timeline-title{font-family:var(--font-heading);color:var(--text-primary);font-size:15px;font-weight:500}.portal-timeline-see-all{color:var(--color-forest);cursor:pointer;font-size:12px;text-decoration:none}.portal-timeline-item{border-bottom:1px solid var(--border-subtle);align-items:flex-start;gap:12px;padding:10px 0;display:flex}.portal-timeline-item:last-child{border-bottom:none}.portal-timeline-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:5px}.portal-timeline-dot.forest{background:var(--color-forest)}.portal-timeline-dot.amber{background:var(--color-amber)}.portal-timeline-dot.aji{background:var(--color-aji)}.portal-timeline-dot.sage{background:var(--color-sage)}.portal-timeline-body{flex:1;min-width:0}.portal-timeline-text{color:var(--text-primary);font-size:13px;line-height:1.4}.portal-timeline-date{color:var(--text-muted);margin-top:2px;font-size:11px}.portal-sparkline-row{align-items:flex-end;gap:3px;height:24px;display:flex}.portal-sparkline-bar{background:#4a6b5240;border-radius:2px;width:6px;transition:background .2s}.portal-sparkline-bar.current{background:var(--color-forest)}.portal-payslip-card{background:var(--surface-card);border-radius:var(--radius-lg);border:1px solid var(--border-subtle);cursor:pointer;padding:16px;transition:background .15s}.portal-payslip-card:hover{background:var(--surface-card-hover)}.portal-payslip-card-head{justify-content:space-between;align-items:center;display:flex}.portal-payslip-month{font-family:var(--font-heading);font-size:15px;font-weight:500}.portal-payslip-doc{color:var(--text-muted);margin-top:2px;font-size:11px}.portal-payslip-amount{font-family:var(--font-display);color:var(--color-forest);text-align:right;font-size:20px}.portal-payslip-chevron{color:var(--text-muted);flex-shrink:0;margin-left:8px}.portal-pay-summary-dark{border-radius:var(--radius-xl);color:#fff;text-align:center;background:linear-gradient(135deg,#26332a 0%,#2a3d30 100%);padding:24px 20px;position:relative;overflow:hidden}.portal-pay-summary-dark:before{content:"";background:#4a6b521f;border-radius:50%;width:100px;height:100px;position:absolute;top:-30px;right:-30px}.portal-pay-summary-label{text-transform:uppercase;letter-spacing:.06em;color:#ffffff73;margin-bottom:6px;font-size:11px}.portal-pay-summary-amount{font-family:var(--font-display);z-index:1;font-size:36px;font-weight:400;position:relative}.portal-pay-comparison{color:#ffffff80;z-index:1;margin-top:6px;font-size:12px;position:relative}.portal-pay-comparison .up{color:#6bc77b}.portal-pay-comparison .down{color:#e87c5a}.portal-breakdown-bar{border-radius:3px;height:6px;margin:16px 0 6px;display:flex;overflow:hidden}.portal-breakdown-bar .segment-ingreso{background:var(--color-forest)}.portal-breakdown-bar .segment-egreso{background:var(--color-aji)}.portal-breakdown-legend{justify-content:center;gap:16px;margin-bottom:4px;display:flex}.portal-breakdown-legend-item{color:var(--text-muted);align-items:center;gap:4px;font-size:11px;display:flex}.portal-breakdown-legend-dot{border-radius:50%;width:6px;height:6px}.portal-detail-section{margin-top:16px}.portal-detail-section-title{text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border-subtle);margin-bottom:8px;padding-bottom:6px;font-size:11px;font-weight:500}.portal-detail-section-title.forest{color:var(--color-forest)}.portal-detail-section-title.aji{color:var(--color-aji)}.portal-detail-row{justify-content:space-between;align-items:center;padding:7px 0;font-size:13px;display:flex}.portal-detail-row-label{color:var(--text-primary)}.portal-detail-row-value{font-family:var(--font-display);font-size:14px}.portal-detail-total-row{background:var(--surface-overlay);border-radius:var(--radius-md);justify-content:space-between;align-items:center;margin-top:8px;padding:10px 14px;font-weight:500;display:flex}.portal-detail-total-value{font-family:var(--font-display);font-size:16px}.portal-pipeline-tabs{gap:6px;margin-bottom:4px;display:flex}.portal-pipeline-tab{border-radius:var(--radius-md);background:var(--surface-card);font-family:var(--font-body);color:var(--text-muted);cursor:pointer;text-align:center;border:1px solid var(--border-subtle);flex:1;padding:8px 12px;font-size:12px;transition:all .15s}.portal-pipeline-tab.active{background:var(--color-ink);color:#fff;border-color:#0000}.portal-pipeline-tab-badge{border-radius:var(--radius-pill);justify-content:center;align-items:center;min-width:18px;height:18px;margin-left:6px;padding:0 5px;font-size:10px;font-weight:500;display:inline-flex}.portal-pipeline-tab.active .portal-pipeline-tab-badge{color:#fff;background:#fff3}.portal-pipeline-tab:not(.active) .portal-pipeline-tab-badge{background:var(--surface-overlay);color:var(--text-muted)}.portal-request-card{background:var(--surface-card);border-radius:var(--radius-lg);border:1px solid var(--border-subtle);align-items:flex-start;gap:12px;padding:14px;transition:background .15s;display:flex}.portal-request-card:hover{background:var(--surface-card-hover)}.portal-request-icon-wrap{border-radius:var(--radius-md);flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.portal-request-icon-wrap.forest{background:#4a6b521f}.portal-request-icon-wrap.amber{background:#c8963a1f}.portal-request-icon-wrap.sage{background:#7a8c7e1f}.portal-request-body{flex:1;min-width:0}.portal-request-type{margin-bottom:2px;font-size:13px;font-weight:450}.portal-request-detail{font-family:var(--font-display);font-size:14px}.portal-request-date{color:var(--text-muted);margin-top:4px;font-size:11px}.portal-request-status{flex-shrink:0}.portal-request-reviewer{background:var(--surface-overlay);border-radius:var(--radius-sm);color:var(--text-secondary);margin-top:8px;padding:8px 12px;font-size:12px;line-height:1.4}.portal-request-reviewer .motivo{color:var(--color-aji);margin-bottom:4px;font-weight:450;display:block}.portal-form-card{background:var(--surface-card);border-radius:var(--radius-lg);border:1px solid var(--border-subtle);flex-direction:column;gap:12px;padding:20px;display:flex}.portal-form-input-money{border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--surface-base);align-items:center;display:flex;overflow:hidden}.portal-form-input-money:focus-within{border-color:var(--color-sage)}.portal-form-input-money-prefix{font-family:var(--font-display);color:var(--text-muted);border-right:1px solid var(--border-subtle);background:var(--surface-overlay);padding:10px 12px;font-size:16px}.portal-form-input-money input{font-family:var(--font-display);color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;width:100%;padding:10px 14px;font-size:20px}.portal-form-context-card{background:var(--surface-overlay);border-radius:var(--radius-md);align-items:center;gap:12px;padding:12px 16px;display:flex}.portal-form-context-avatar{background:var(--color-forest);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:13px;font-weight:500;display:flex}.portal-form-context-name{font-size:14px;font-weight:450}.portal-form-context-sub{color:var(--text-muted);font-size:12px}.portal-live-preview{background:var(--surface-overlay);border-radius:var(--radius-md);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.portal-live-preview-label{color:var(--text-secondary);font-size:12px}.portal-live-preview-value{font-family:var(--font-display);color:var(--color-forest);font-size:18px}.portal-btn-primary-full{border-radius:var(--radius-pill);background:var(--color-ink);color:#fff;width:100%;font-family:var(--font-body);cursor:pointer;border:none;padding:12px;font-size:14px;font-weight:500;transition:opacity .15s}.portal-btn-primary-full:hover{opacity:.9}.portal-btn-primary-full:disabled{opacity:.5;cursor:not-allowed}.portal-btn-secondary-full{border:1px solid var(--border-default);border-radius:var(--radius-pill);width:100%;color:var(--text-primary);font-family:var(--font-body);cursor:pointer;background:0 0;justify-content:center;align-items:center;padding:12px;font-size:14px;font-weight:450;text-decoration:none;display:inline-flex}.portal-profile-avatar-lg{background:var(--color-forest);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;margin:0 auto 12px;font-size:24px;font-weight:500;display:flex}.portal-profile-name{font-family:var(--font-heading);text-align:center;font-size:20px;font-weight:500}.portal-profile-cargo{color:var(--text-muted);text-align:center;margin-top:2px;font-size:13px}.portal-profile-info-row{border-bottom:1px solid var(--border-subtle);justify-content:space-between;padding:12px 0;font-size:13px;display:flex}.portal-profile-info-row:last-child{border-bottom:none}.portal-profile-info-label{color:var(--text-muted)}.portal-profile-info-value{color:var(--text-primary);font-weight:450}.portal-back-row{color:var(--text-muted);align-items:center;gap:4px;font-size:13px;text-decoration:none;transition:color .15s;display:inline-flex}.portal-back-row:hover{color:var(--text-primary)}.portal-success-card{text-align:center;padding:40px 24px}.portal-success-icon{color:var(--color-forest);margin:0 auto 12px;display:block}.portal-stat-boxes{grid-template-columns:1fr 1fr;gap:10px;display:grid}.admin-portal{background:#f5f2ed;min-height:100vh;overflow-x:hidden}.admin-main{max-width:1600px;margin:0 auto;padding:28px;overflow-x:hidden}.admin-topbar{z-index:100;background:#fff;border-bottom:1px solid #1a1f1c1a;justify-content:space-between;align-items:center;height:56px;padding:0 28px;display:flex;position:sticky;top:0;box-shadow:0 1px 3px #1a1f1c0a}.admin-topbar-left{align-items:center;gap:12px;display:flex}.admin-topbar-left svg{color:var(--color-aji)}.admin-topbar-title{font-family:var(--font-heading);color:var(--color-ink);letter-spacing:-.3px;font-size:17px;font-weight:500}.admin-topbar-right{align-items:center;gap:18px;display:flex}.admin-owner-email{color:var(--text-muted);font-size:12px;font-family:var(--font-body)}.admin-back-link{font-size:12px;font-family:var(--font-body);color:var(--color-ink);border-radius:var(--radius-pill);transition:all .15s var(--ease);background:#1a1f1c0a;border:1px solid #1a1f1c1a;align-items:center;gap:6px;padding:7px 14px;text-decoration:none;display:flex}.admin-back-link:hover{color:var(--color-ink);background:#1a1f1c14}.admin-kpi-grid{grid-template-columns:repeat(5,1fr);gap:14px;margin-bottom:20px;display:grid}@media (max-width:1200px){.admin-kpi-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:768px){.admin-kpi-grid{grid-template-columns:repeat(2,1fr)}}.admin-card{border-radius:var(--radius-lg);transition:box-shadow .15s var(--ease);background:#fff;border:1px solid #1a1f1c1a;padding:18px 20px}.admin-card:hover{box-shadow:0 2px 8px #1a1f1c0f}.admin-card-header{align-items:center;gap:8px;margin-bottom:10px;display:flex}.admin-card-header svg{opacity:.55;flex-shrink:0}.admin-card-label{font-size:10px;font-family:var(--font-body);color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.admin-card-value{font-family:var(--font-display);color:var(--color-ink);margin-bottom:6px;font-size:26px;font-weight:500;line-height:1.1}.admin-card-meta{font-size:11px;font-family:var(--font-body);color:var(--text-muted)}.admin-card-delta{font-size:11px;font-family:var(--font-body);align-items:center;gap:3px;display:inline-flex}.admin-card-delta.up{color:var(--color-forest)}.admin-card-delta.down{color:var(--color-aji)}.admin-stat-row{flex-wrap:wrap;gap:10px;display:flex}.admin-stat-item{font-size:10px;font-family:var(--font-body)}.admin-stat-item.trial{color:var(--color-amber)}.admin-stat-item.active{color:var(--color-forest)}.admin-stat-item.suspended{color:var(--color-aji)}.admin-plan-row{gap:20px;margin-top:6px;display:flex}.admin-plan-item{flex-direction:column;align-items:center;display:flex}.admin-plan-count{font-family:var(--font-display);color:var(--color-ink);font-size:20px;font-weight:500}.admin-plan-label{font-size:9px;font-family:var(--font-body);color:var(--text-muted);text-transform:capitalize}.admin-config-strip{border-radius:var(--radius-lg);background:#fff;border:1px solid #1a1f1c1a;align-items:center;gap:14px;margin-bottom:16px;padding:14px 20px;display:flex}.admin-config-label{color:var(--text-muted);font-size:11px;font-family:var(--font-body);white-space:nowrap;flex-shrink:0}.admin-config-input{max-width:220px;font-size:13px;font-family:var(--font-body);color:var(--color-ink);border-radius:var(--radius-md);background:#faf9f7;border:1px solid #1a1f1c1f;outline:none;flex:1;padding:8px 12px;transition:border-color .15s}.admin-config-input:focus{border-color:var(--color-sage)}.admin-config-input::placeholder{color:var(--text-muted)}.admin-btn{font-size:12px;font-family:var(--font-body);color:#fff;background:var(--color-forest);border-radius:var(--radius-pill);cursor:pointer;border:none;flex-shrink:0;padding:8px 16px;font-weight:500;transition:opacity .15s}.admin-btn:hover{opacity:.9}.admin-btn:disabled{opacity:.5;cursor:not-allowed}.admin-trial-config{border-radius:var(--radius-lg);background:#fff;border:1px solid #1a1f1c1a;margin-bottom:16px;padding:16px 20px}.admin-trial-config-title{color:var(--text-muted);font-size:11px;font-family:var(--font-body);text-transform:uppercase;letter-spacing:.04em;margin-bottom:14px}.admin-trial-row{align-items:center;gap:14px;padding:8px 0;display:flex}.admin-trial-row+.admin-trial-row{border-top:1px solid #1a1f1c14}.admin-plan-chip{min-width:64px;font-size:10px;font-weight:500;font-family:var(--font-body);color:var(--color-ink);border-radius:var(--radius-pill);text-transform:capitalize;background:#1a1f1c0d;border:1px solid #1a1f1c1a;justify-content:center;align-items:center;padding:4px 10px;display:inline-flex}.admin-trial-input{text-align:center;width:70px;font-size:13px;font-family:var(--font-body);color:var(--color-ink);border-radius:var(--radius-md);background:#faf9f7;border:1px solid #1a1f1c1f;outline:none;padding:7px 10px}.admin-trial-input:focus{border-color:var(--color-sage)}.admin-tab-bar{border-bottom:1px solid #1a1f1c1a;gap:0;margin-bottom:24px;display:flex}.admin-tab{cursor:pointer;font-size:12px;font-family:var(--font-body);color:var(--text-muted);transition:color .15s var(--ease);background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:12px 18px;font-weight:400}.admin-tab:hover{color:var(--color-ink)}.admin-tab.active{color:var(--color-ink);border-bottom-color:var(--color-aji);font-weight:500}.admin-section-label{font-size:10px;font-family:var(--font-body);color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:12px;font-weight:500}.admin-middleware-panel{border-radius:var(--radius-lg);background:#fff;border:1px solid #1a1f1c1a;margin-bottom:20px;padding:18px 20px}.admin-middleware-grid{grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px;display:grid}.admin-middleware-stat{border-radius:var(--radius-md);text-align:center;background:#faf9f7;border:1px solid #1a1f1c14;padding:14px 16px}.admin-middleware-stat.warning{background:#d4622a0f;border-color:#d4622a2e}.admin-middleware-stat.alert{background:#c8963a0f;border-color:#c8963a2e}.admin-middleware-count{font-family:var(--font-display);color:var(--color-ink);font-size:28px;font-weight:500;line-height:1.1}.admin-middleware-stat.warning .admin-middleware-count{color:var(--color-aji)}.admin-middleware-stat.alert .admin-middleware-count{color:var(--color-amber)}.admin-middleware-label{font-size:11px;font-family:var(--font-body);color:var(--text-muted);margin-top:4px}.admin-event-list{flex-direction:column;gap:0;display:flex}.admin-event-row{border-bottom:1px solid #1a1f1c14;justify-content:space-between;align-items:center;padding:10px 0;display:flex}.admin-event-row:last-child{border-bottom:none}.admin-event-left{align-items:center;gap:10px;display:flex}.admin-event-chip{font-size:9px;font-weight:500;font-family:var(--font-body);border-radius:var(--radius-pill);letter-spacing:.02em;align-items:center;padding:3px 8px;display:inline-flex}.admin-event-chip.suspended{color:var(--color-aji);background:#d4622a1a;border:1px solid #d4622a33}.admin-event-chip.limit{color:var(--color-amber);background:#c8963a1a;border:1px solid #c8963a40}.admin-event-chip.expired{color:var(--color-aji);background:#d4622a14;border:1px solid #d4622a26}.admin-event-chip.default{color:var(--text-muted);background:#1a1f1c0d;border:1px solid #1a1f1c1a}.admin-event-tenant{font-size:12px;font-family:var(--font-body);color:var(--color-ink)}.admin-event-time{font-size:10px;font-family:var(--font-body);color:var(--text-muted);flex-shrink:0}.admin-no-events{text-align:center;font-size:11px;font-family:var(--font-body);color:var(--text-muted);padding:16px 0}.admin-toast-container{z-index:9999;pointer-events:none;flex-direction:column;gap:8px;display:flex;position:fixed;bottom:24px;right:24px}.admin-toast{border-radius:var(--radius-md);font-size:12px;font-family:var(--font-body);color:#fff;animation:adminToastSlide .25s var(--ease);padding:11px 18px;font-weight:500;box-shadow:0 4px 16px #1a1f1c26}.admin-toast.success{background:var(--color-forest)}.admin-toast.error{background:var(--color-aji)}@keyframes adminToastSlide{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.admin-detail-tabs{border-bottom:1px solid var(--border-subtle);gap:0;margin-bottom:24px;display:flex}.admin-detail-tab{cursor:pointer;font-size:12px;font-family:var(--font-body);color:var(--text-muted);background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 16px;font-weight:400;transition:color .15s}.admin-detail-tab.active{color:var(--text-primary);border-bottom-color:var(--color-ink);font-weight:500}.admin-portal .admin-user-cards{display:none}@media (max-width:640px){.admin-main{padding:16px}.admin-topbar{height:52px;padding:0 16px}.admin-topbar-title{font-size:14px}.admin-owner-email{display:none}.admin-back-link{padding:6px 10px;font-size:11px}.admin-back-link span{display:none}.admin-kpi-grid{grid-template-columns:repeat(2,1fr);gap:10px}.admin-card{padding:14px 16px}.admin-card-value{font-size:22px}.admin-config-strip{flex-direction:column;align-items:stretch;gap:10px;padding:14px 16px}.admin-config-input{max-width:none}.admin-trial-config{padding:14px 16px}.admin-trial-row{flex-wrap:wrap;gap:10px}.admin-tab-bar{border-bottom:none;grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:16px;margin-left:0;margin-right:0;padding-left:0;padding-right:0;display:grid;overflow-x:visible}.admin-tab{border-radius:var(--radius-md);color:var(--text-secondary);white-space:nowrap;text-align:center;background:#fff;border:1px solid #1a1f1c1a;padding:12px 14px;font-size:13px;font-weight:500}.admin-tab.active{background:var(--color-ink);color:#fff;border-color:var(--color-ink)}.admin-middleware-panel{padding:14px 16px}.admin-middleware-grid{grid-template-columns:1fr;gap:10px}.admin-middleware-count{font-size:24px}.admin-toast-container{bottom:16px;left:16px;right:16px}.admin-toast{width:100%}.admin-detail-tabs{border-bottom:none;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:16px;display:grid}.admin-detail-tab{border-radius:var(--radius-md);color:var(--text-secondary);text-align:center;background:#fff;border:1px solid #1a1f1c1a;margin-bottom:0;padding:12px 14px;font-size:13px;font-weight:500}.admin-detail-tab.active{background:var(--color-ink);color:#fff;border-color:var(--color-ink)}.admin-portal .table-wrap{display:none}.admin-portal .admin-user-cards{flex-direction:column;gap:12px;display:flex}.admin-portal .admin-user-card{border-radius:var(--radius-md);background:#fff;border:1px solid #1a1f1c1a;padding:14px}.admin-portal .admin-user-card-header{align-items:center;gap:10px;margin-bottom:10px;display:flex}.admin-portal .admin-user-card-info{flex:1;min-width:0}.admin-portal .admin-user-card-name{color:var(--text-primary);margin-bottom:2px;font-size:12px;font-weight:500}.admin-portal .admin-user-card-email{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.admin-portal .admin-user-card-row{border-top:1px solid #1a1f1c0f;justify-content:space-between;align-items:center;padding:6px 0;font-size:11px;display:flex}.admin-portal .admin-user-card-label{color:var(--text-muted)}.admin-portal .admin-user-card-actions{border-top:1px solid #1a1f1c14;flex-wrap:wrap;gap:6px;margin-top:10px;padding-top:10px;display:flex}.admin-portal .admin-user-card-actions .btn{flex:1;min-width:80px}.admin-portal .card-pad{padding:14px 16px}.admin-portal .card-pad-sm{padding:12px 14px}}.mb-1{margin-bottom:var(--space-1)}.mb-4{margin-bottom:var(--space-4)}.ta-right{text-align:right}.ta-center{text-align:center}.tipo-dot{background:var(--color-violet);border-radius:50%;flex-shrink:0;width:8px;height:8px}.channel-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.iva-bar-row{flex-direction:column;display:flex}.iva-bar-track{background:var(--surface-overlay);border-radius:var(--radius-sm);height:8px;position:relative;overflow:hidden}.iva-bar-fill{border-radius:var(--radius-sm);height:100%;transition:width .8s var(--ease);will-change:width}.bar-chart-row{align-items:center;gap:var(--space-2);display:flex}.bar-chart-label{width:56px;font-size:var(--text-xs);color:var(--text-muted);flex-shrink:0}.bar-chart-track{background:var(--surface-overlay);border-radius:var(--radius-sm);flex:1;height:24px;position:relative;overflow:hidden}.bar-chart-fill{background:var(--color-forest);border-radius:var(--radius-sm);height:100%;transition:width .8s var(--ease);will-change:width}.bar-chart-value{width:90px;font-size:var(--text-sm);font-family:var(--font-display);text-align:right;flex-shrink:0}.channel-stacked-bar{border-radius:var(--radius-md);height:24px;display:flex;overflow:hidden}.channel-segment{min-width:4px;transition:opacity .2s var(--ease)}.channel-segment:hover{opacity:.8}.channel-legend{gap:var(--space-3);flex-wrap:wrap;display:flex}.channel-legend-dot{border-radius:var(--radius-sm);flex-shrink:0;width:12px;height:12px}.vendor-rank{color:var(--text-muted);font-weight:500}.vendor-rank.top-rank{color:var(--color-aji)}.labor-pct-row{align-items:center;gap:var(--space-2);display:flex}.labor-pct-track{background:var(--surface-overlay);border-radius:var(--radius-sm);flex:1;height:24px;position:relative;overflow:hidden}.labor-target-line{background:var(--border-default);z-index:1;width:2px;position:absolute;top:0;bottom:0;left:30%}.labor-pct-fill{border-radius:var(--radius-sm);height:100%;transition:width .8s var(--ease)}.labor-pct-value{width:60px;font-size:var(--text-sm);font-family:var(--font-display);text-align:right;flex-shrink:0}.t-caption{font-family:var(--font-body);color:var(--text-muted);font-size:10px}.mt-1{margin-top:var(--space-1)}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}