@import"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;700&family=Fira+Code:wght@400;500;700&family=Inter:wght@400;500;600&family=Lora:ital,wght@0,400;0,500;0,600;1,400&display=swap";:root{--ab-l-rojo: #dc3839;--ab-l-rojo-texto: #c2302f;--ab-l-grafito: #3d3832;--ab-l-crema: #f4eedd;--ab-l-panel: #e8ddc1;--ab-l-lienzo: #faf7eb;--ab-l-nucleo: rgba(61, 56, 50, .18);--ab-l-fondo: #f6efdd;--ab-l-texto: var(--ab-l-grafito);--ab-l-texto-2: #6f675b;--ab-l-borde: #d9cbab;--ab-l-tarjeta: rgba(250, 247, 235, .86);--ab-l-max: 1440px;--ab-l-radio: 3px;--ab-l-mono: ui-monospace, "SFMono-Regular", "Cascadia Mono", Consolas, monospace}:root[data-theme=matrix]{--ab-l-fondo: #221f1b;--ab-l-texto: #ece5d6;--ab-l-texto-2: #a09685;--ab-l-borde: #3d382f;--ab-l-panel: #2f2a23;--ab-l-lienzo: #2a251f;--ab-l-tarjeta: rgba(42, 37, 31, .86);--ab-l-rojo: #ec5b52;--ab-l-rojo-texto: #ec5b52;--ab-l-nucleo: rgba(236, 229, 214, .156)}.ab-l-backdrop{position:fixed;inset:0;z-index:-1;background-color:var(--ab-l-fondo);overflow:hidden}.ab-l-backdrop:before{content:"";position:absolute;inset:-30%;background-image:repeating-linear-gradient(90deg,transparent 0 1px,var(--ab-l-nucleo) 1px 2px,transparent 2px 320px),repeating-linear-gradient(0deg,transparent 0 1px,var(--ab-l-nucleo) 1px 2px,transparent 2px 320px),repeating-linear-gradient(90deg,color-mix(in srgb,var(--ab-l-rojo) 20.4%,transparent) 0 3px,transparent 3px 320px),repeating-linear-gradient(0deg,color-mix(in srgb,var(--ab-l-rojo) 20.4%,transparent) 0 3px,transparent 3px 320px),repeating-linear-gradient(90deg,color-mix(in srgb,var(--ab-l-rojo) 15.6%,transparent) 0 2px,transparent 2px 160px),repeating-linear-gradient(0deg,color-mix(in srgb,var(--ab-l-rojo) 15.6%,transparent) 0 2px,transparent 2px 160px),repeating-linear-gradient(90deg,color-mix(in srgb,var(--ab-l-rojo) 5.4%,transparent) 0 1px,transparent 1px 32px),repeating-linear-gradient(0deg,color-mix(in srgb,var(--ab-l-rojo) 5.4%,transparent) 0 1px,transparent 1px 32px);animation:ab-l-drift 130s linear infinite}@keyframes ab-l-drift{to{transform:translate(640px,-320px)}}.ab-l-backdrop:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 75% 65% at 50% 45%,transparent 0%,color-mix(in srgb,var(--ab-l-fondo) 72%,transparent) 62%,var(--ab-l-fondo) 100%)}.ab-l-hud{position:fixed;inset:0;z-index:-1;pointer-events:none;font-family:var(--ab-l-mono);font-size:10px;letter-spacing:.14em;color:color-mix(in srgb,var(--ab-l-texto) 45%,transparent)}.ab-l-hud i{position:absolute;width:22px;height:22px;border:1px solid color-mix(in srgb,var(--ab-l-rojo) 55%,transparent)}.ab-l-hud i:nth-child(1){top:12px;left:12px;border-right:0;border-bottom:0}.ab-l-hud i:nth-child(2){top:12px;right:12px;border-left:0;border-bottom:0}.ab-l-hud i:nth-child(3){bottom:12px;left:12px;border-right:0;border-top:0}.ab-l-hud i:nth-child(4){bottom:12px;right:12px;border-left:0;border-top:0}.ab-l-hud b{position:absolute;font-weight:400}.ab-l-hud .tl{top:17px;left:44px}.ab-l-hud .tr{top:17px;right:44px}.ab-l-hud .bl{bottom:17px;left:44px}.ab-l-hud .br{bottom:17px;right:44px}.ab-l-hud .dot{display:inline-block;width:5px;height:5px;margin-right:7px;border-radius:50%;background:var(--ab-l-rojo);vertical-align:middle}@media(max-width:720px){.ab-l-hud .tr,.ab-l-hud .br{display:none}}.ab-l-shell{max-width:var(--ab-l-max);margin:0 auto;padding:0 calc(1.25 * var(--ab-l-u));color:var(--ab-l-texto);font-size:16px;line-height:1.6}.ab-l-hero-col{min-height:100svh;display:flex;flex-direction:column;justify-content:center}.ab-l-scroll-hint{display:block;margin:calc(1.25 * var(--ab-l-u)) auto calc(2 * var(--ab-l-u));padding:calc(.5 * var(--ab-l-u)) calc(1 * var(--ab-l-u));border:0;background:none;color:var(--ab-l-texto-2);font-family:var(--ab-l-mono);font-size:calc(.7 * var(--ab-l-u));letter-spacing:.14em;text-transform:uppercase;cursor:pointer}.ab-l-scroll-hint:before{content:"↓";display:block;font-size:calc(1.3 * var(--ab-l-u));line-height:1;margin-bottom:calc(.4 * var(--ab-l-u));animation:ab-l-bob 2.2s ease-in-out infinite}@keyframes ab-l-bob{0%,to{transform:translateY(0)}50%{transform:translateY(5px)}}@media(min-width:1024px){.ab-l-shell{display:grid;grid-template-columns:minmax(0,36fr) minmax(0,64fr);gap:calc(3.5 * var(--ab-l-u));align-items:start;padding:0 calc(2.5 * var(--ab-l-u));font-size:17px}.ab-l-hero-col{box-sizing:border-box;min-height:100svh;padding-block:calc(1 * var(--ab-l-u))}.ab-l-scroll-hint{display:none}}@media(min-width:1024px){.ab-l-hero-col{position:sticky;top:0}}@media(min-width:1440px){.ab-l-shell{max-width:1600px;gap:calc(4.5 * var(--ab-l-u));padding:0 calc(3.5 * var(--ab-l-u));font-size:18px}.ab-l-sec p{max-width:72ch}.ab-l-main{gap:calc(7 * var(--ab-l-u))}}.ab-l-main{padding-block:calc(1 * var(--ab-l-u)) 0;display:flex;flex-direction:column;gap:calc(3.5 * var(--ab-l-u))}@media(min-width:1024px){.ab-l-main{padding-block:calc(5 * var(--ab-l-u));gap:calc(5.5 * var(--ab-l-u))}}.ab-l-kicker{margin:0 0 calc(.45 * var(--ab-l-u));display:flex;align-items:center;gap:calc(.7 * var(--ab-l-u));font-family:var(--ab-l-mono);font-size:calc(.68 * var(--ab-l-u));letter-spacing:.16em;text-transform:uppercase;color:var(--ab-l-texto-2)}.ab-l-kicker:after{content:"";flex:1;height:1px;background:var(--ab-l-borde)}.ab-l-kicker b{font-weight:400;font-size:calc(1 * var(--ab-l-u));line-height:1;color:var(--ab-l-rojo-texto)}.ab-l-sec>h2{margin:0 0 calc(.8 * var(--ab-l-u));font-size:clamp(calc(1.5 * var(--ab-l-u)),calc(1.15 * var(--ab-l-u)) + 1.1vw,calc(2.15 * var(--ab-l-u)));line-height:1.2;font-weight:600;letter-spacing:-.02em}.ab-l-sec p{margin:0 0 calc(.8 * var(--ab-l-u));max-width:64ch}.ab-l-sec p:last-child{margin-bottom:0}.ab-l-sub{margin-top:calc(1.4 * var(--ab-l-u));padding:calc(.95 * var(--ab-l-u)) calc(1.1 * var(--ab-l-u));border:1px solid var(--ab-l-borde);border-left:2px solid var(--ab-l-rojo);border-radius:0 var(--ab-l-radio) var(--ab-l-radio) 0;background:color-mix(in srgb,var(--ab-l-lienzo) 55%,transparent)}.ab-l-sub h3{margin:0 0 calc(.3 * var(--ab-l-u));font-size:calc(.98 * var(--ab-l-u));font-weight:600}.ab-l-sub p{font-size:calc(.94 * var(--ab-l-u));color:var(--ab-l-texto-2)}.ab-l-arranque>h2{margin:0 0 calc(1 * var(--ab-l-u));font-size:clamp(calc(1.5 * var(--ab-l-u)),calc(1.15 * var(--ab-l-u)) + 1.1vw,calc(2.15 * var(--ab-l-u)));line-height:1.2;font-weight:600;letter-spacing:-.02em}.ab-l-arranque-acciones{display:grid;gap:calc(.6 * var(--ab-l-u));grid-template-columns:1fr}@media(min-width:560px){.ab-l-arranque-acciones{grid-template-columns:1fr 1fr}}.ab-l-arranque-rotulo{margin:calc(1.6 * var(--ab-l-u)) 0 calc(.7 * var(--ab-l-u));font-family:var(--ab-l-mono);font-size:calc(.68 * var(--ab-l-u));letter-spacing:.16em;text-transform:uppercase;color:var(--ab-l-texto-2)}.ab-l-catalogo{display:grid;gap:calc(.7 * var(--ab-l-u));grid-template-columns:repeat(auto-fit,minmax(calc(15 * var(--ab-l-u)),1fr))}.ab-l-diseno{display:flex;flex-direction:column;gap:calc(.3 * var(--ab-l-u));padding:calc(.9 * var(--ab-l-u)) calc(1 * var(--ab-l-u));font:inherit;text-align:left;cursor:pointer;color:var(--ab-l-texto);background:color-mix(in srgb,var(--ab-l-lienzo) 55%,transparent);border:1px solid var(--ab-l-borde);border-radius:var(--ab-l-radio);transition:border-color .15s}.ab-l-diseno:hover{border-color:var(--ab-l-texto-2)}.ab-l-diseno b{font-size:calc(.98 * var(--ab-l-u));font-weight:600}.ab-l-diseno span{font-size:calc(.88 * var(--ab-l-u));line-height:1.45;color:var(--ab-l-texto-2)}.ab-l-diseno i{margin-top:auto;padding-top:calc(.5 * var(--ab-l-u));font-style:normal;font-family:var(--ab-l-mono);font-size:calc(.7 * var(--ab-l-u));color:var(--ab-l-texto-2)}.ab-l-fig{position:relative;margin:calc(1.4 * var(--ab-l-u)) 0 0;border:1px solid color-mix(in srgb,var(--ab-l-borde) 55%,transparent);border-radius:var(--ab-l-radio);overflow:hidden;background:var(--ab-l-lienzo)}.ab-l-fig:after{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;box-shadow:inset 0 0 calc(1.2 * var(--ab-l-u)) calc(.45 * var(--ab-l-u)) color-mix(in srgb,var(--ab-l-fondo) 88%,transparent)}.ab-l-fig img{display:block;width:100%;height:auto}.ab-l-fig figcaption{padding:calc(.5 * var(--ab-l-u)) calc(.75 * var(--ab-l-u));border-top:1px solid var(--ab-l-borde);color:var(--ab-l-texto-2);font-family:var(--ab-l-mono);font-size:calc(.72 * var(--ab-l-u));letter-spacing:.04em}.ab-l-par{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(350px,100%),1fr));gap:calc(.8 * var(--ab-l-u))}.ab-l-par .ab-l-fig{margin-top:0}.ab-l-par{margin-top:calc(1.4 * var(--ab-l-u))}.ab-l-par .ab-l-fig{align-self:stretch;display:flex;flex-direction:column}.ab-l-par .ab-l-fig img{flex:1 1 auto;min-height:0;object-fit:cover}.ab-l-datos{display:grid;gap:calc(1.4 * var(--ab-l-u)) calc(2 * var(--ab-l-u));grid-template-columns:1fr}@media(min-width:560px){.ab-l-datos{grid-template-columns:1fr 1fr}}.ab-l-dato{padding-top:calc(.85 * var(--ab-l-u));border-top:1px solid var(--ab-l-borde)}.ab-l-dato h3{margin:0 0 calc(.3 * var(--ab-l-u));font-size:calc(1.02 * var(--ab-l-u));font-weight:600}.ab-l-dato p{margin:0;font-size:calc(.95 * var(--ab-l-u));color:var(--ab-l-texto-2)}.ab-l-valor{padding:calc(1.4 * var(--ab-l-u)) calc(1.5 * var(--ab-l-u));border:1px solid var(--ab-l-borde);border-radius:var(--ab-l-radio);background:color-mix(in srgb,var(--ab-l-lienzo) 60%,transparent)}.ab-l-firma{margin-top:calc(1 * var(--ab-l-u));padding-top:calc(1 * var(--ab-l-u));border-top:1px solid var(--ab-l-borde);font-weight:600}.ab-l-firma-marca{display:flex;align-items:center;gap:calc(.9 * var(--ab-l-u));margin-bottom:calc(.7 * var(--ab-l-u))}.ab-l-firma-marca img{flex:none;box-sizing:border-box;width:84px;height:84px;border:3px solid var(--ab-l-texto);border-radius:50%}.ab-l-firma-marca h2{margin:0;font-size:clamp(calc(1.5 * var(--ab-l-u)),calc(1.15 * var(--ab-l-u)) + 1.1vw,calc(2.15 * var(--ab-l-u)));line-height:1.2;font-weight:600;letter-spacing:-.02em}@media(min-width:1024px){.ab-l-firma-marca img{width:108px;height:108px}}.ab-l-pie{margin-top:calc(3 * var(--ab-l-u));padding:calc(1.75 * var(--ab-l-u)) 0 calc(3 * var(--ab-l-u));border-top:1px solid var(--ab-l-borde);color:var(--ab-l-texto-2);font-size:calc(.85 * var(--ab-l-u))}.ab-l-pie p{margin:0 0 calc(.6 * var(--ab-l-u));max-width:60ch}.ab-l-pie a{color:inherit;text-underline-offset:2px}.ab-l-pie a:hover{color:var(--ab-l-rojo-texto)}.ab-l-form{margin:0 0 calc(1.25 * var(--ab-l-u));max-width:46ch}.ab-l-form label{display:block;margin-bottom:calc(.35 * var(--ab-l-u));font-family:var(--ab-l-mono);font-size:calc(.7 * var(--ab-l-u));letter-spacing:.1em;text-transform:uppercase}.ab-l-form textarea,.ab-l-form input{box-sizing:border-box;width:100%;font:inherit;font-size:calc(.9 * var(--ab-l-u));padding:calc(.55 * var(--ab-l-u)) calc(.7 * var(--ab-l-u));color:var(--ab-l-texto);background:var(--ab-l-lienzo);border:1px solid var(--ab-l-borde);border-radius:var(--ab-l-radio)}.ab-l-form textarea{resize:vertical;min-height:calc(4.5 * var(--ab-l-u))}.ab-l-form-fila{display:flex;gap:calc(.5 * var(--ab-l-u));margin-top:calc(.5 * var(--ab-l-u))}.ab-l-form-fila input{flex:1;min-width:0}.ab-l-form button{flex:none;font:inherit;font-size:calc(.9 * var(--ab-l-u));font-weight:600;padding:calc(.55 * var(--ab-l-u)) calc(1.2 * var(--ab-l-u));cursor:pointer;color:var(--ab-l-crema);background:var(--ab-l-grafito);border:1px solid var(--ab-l-grafito);border-radius:var(--ab-l-radio)}.ab-l-form-aviso{margin:calc(.55 * var(--ab-l-u)) 0 0;font-family:var(--ab-l-mono);font-size:calc(.68 * var(--ab-l-u));color:var(--ab-l-rojo-texto)}.ab-l-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.ab-l-pie nav{margin-top:calc(1 * var(--ab-l-u));display:flex;flex-wrap:wrap;gap:calc(.4 * var(--ab-l-u)) calc(1.25 * var(--ab-l-u));font-family:var(--ab-l-mono);font-size:calc(.72 * var(--ab-l-u));letter-spacing:.08em;text-transform:uppercase}@media(prefers-reduced-motion:reduce){.ab-l-scroll-hint:before,.ab-l-backdrop:before{animation:none}html{scroll-behavior:auto}}@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}:where(.ab-l-shell) :focus-visible{outline:2px solid var(--ab-l-rojo);outline-offset:3px;border-radius:var(--ab-l-radio)}@media print{.ab-l-shell,.ab-l-backdrop,.ab-l-hud{display:none!important}}.ab3d .ab-l-shell{position:relative;z-index:2;box-sizing:border-box;width:100%;color:inherit;font-size:inherit;line-height:inherit}@media(max-width:640px){.ab3d .start-screen>.ab-l-shell{padding-inline:0}}.ab3d .ab-l-shell,.ab3d .ab-l-main{--ab-l-u: 16px}@media(min-width:1024px){.ab3d .ab-l-shell,.ab3d .ab-l-main{--ab-l-u: 17px}}@media(min-width:1440px){.ab3d .ab-l-shell,.ab3d .ab-l-main{--ab-l-u: 18px}}.ab3d .ab-l-main{box-sizing:border-box;width:100%;max-width:980px;margin-inline:auto;color:var(--ab-l-texto);font-size:var(--ab-l-u);line-height:1.6}.ab3d .ab-l-col{display:flex;flex-direction:column;min-width:0}@media(min-width:1024px){.ab3d .ab-l-main{padding-block:calc(2.5 * var(--ab-l-u)) 0}.ab3d .ab-l-hero-col{min-height:0;justify-content:flex-start;padding-block:0;z-index:2}.ab3d .ab-l-hero-col .start-brand,.ab3d .ab-l-hero-col .start-brand span{font-size:30px;gap:16px;white-space:nowrap}.ab3d .ab-l-hero-col .start-brand svg{width:38px;height:38px}.ab3d .ab-l-col .start-card--disenos{width:100%;display:grid;grid-template-columns:1fr 1fr;column-gap:calc(.7 * var(--ab-l-u));align-items:stretch}.ab3d .ab-l-col .start-card--disenos>.start-card-titulo,.ab3d .ab-l-col .start-card--disenos>.start-catalogo{grid-column:1 / -1}.ab3d .ab-l-col .start-card--disenos>.start-disenar-fila{margin:0 0 calc(1.2 * var(--ab-l-u))}.ab3d .ab-l-col .start-card--disenos>.start-disenar-fila .btn{height:auto;min-height:48px}.ab3d .ab-l-col .start-catalogo-tira{display:grid;gap:calc(.7 * var(--ab-l-u));grid-template-columns:repeat(auto-fit,minmax(min(calc(12 * var(--ab-l-u)),100%),1fr))}.ab3d .ab-l-col .start-catalogo-fila{flex-direction:column;align-items:stretch;justify-content:flex-start;gap:calc(.3 * var(--ab-l-u));padding:calc(.9 * var(--ab-l-u)) calc(1 * var(--ab-l-u));border:1px solid var(--border);border-radius:var(--radius-sm)}.ab3d .ab-l-col .start-catalogo-texto{flex:0 0 auto}.ab3d .ab-l-col .start-catalogo-datos{margin-top:auto;padding-top:calc(.5 * var(--ab-l-u));text-align:left}}.ab3d .left-toolbar{flex:0 0 84px;width:84px;display:flex;flex-direction:column;align-items:center;gap:10px;padding:12px 8px;background:var(--toolbar);border-right:1px solid var(--border);overflow-x:hidden;overflow-y:auto}.ab3d .lt-switch{display:flex;flex-direction:column;width:100%;gap:2px;padding-bottom:8px;margin-bottom:2px;border-bottom:1px solid var(--border)}.ab3d .lt-switch-btn{width:100%;height:26px;padding:0 4px;font-size:11px;font-weight:600}.ab3d .btn.lt-switch-btn.active{background:var(--brand-accent);color:#fff;border-color:var(--brand-accent)}.ab3d .btn.lt-modo{width:100%;height:32px;padding:0 4px;font-size:10.5px;font-weight:600;color:var(--foreground)}.ab3d .left-group{display:flex;flex-direction:column;gap:4px;padding-bottom:10px}.ab3d .left-group:not(:last-child){border-bottom:1px solid var(--border)}.ab3d .btn-icon.axis-red,.ab3d .btn-icon.axis-red.active{color:#dc2626}.ab3d .left-group:last-child{padding-bottom:0}.ab3d .pdf-menu{position:relative}.ab3d .pdf-flyout{position:absolute;top:calc(100% + 6px);right:0;z-index:40;width:210px;background:var(--popover);color:var(--popover-foreground);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:10px;display:flex;flex-direction:column;gap:6px}.ab3d .pdf-flyout .btn{justify-content:flex-start;height:30px}.ab3d .pdf-flyout-title{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted-foreground);font-weight:600;margin-bottom:2px}.ab3d .pdf-flyout-row{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted-foreground);padding:2px 0}.ab3d .pdf-flyout-row input[type=range]{flex:1}.ab3d .pdf-flyout-error{color:var(--destructive);font-size:12px}.ab3d .compartir-menu{position:relative;display:inline-flex}.ab3d .compartir-flyout{position:absolute;bottom:calc(100% + 6px);left:0;z-index:40;width:260px;background:var(--popover);color:var(--popover-foreground);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:10px;display:flex;flex-direction:column;gap:6px}.ab3d .compartir-flyout--abajo{bottom:auto;top:calc(100% + 6px)}.ab3d .compartir-flyout .btn{height:30px}.ab3d .compartir-title{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted-foreground);font-weight:600;margin-bottom:2px}.ab3d .compartir-nota{margin:0;font-size:12px;color:var(--muted-foreground);line-height:1.4}.ab3d .compartir-error{margin:0;font-size:12px;color:var(--destructive);line-height:1.4}.ab3d .compartir-url{width:100%;min-width:0;height:30px;font-size:12px;font-family:ui-monospace,monospace}.ab3d .compartir-flyout{max-height:min(70vh,460px);overflow-y:auto}.ab3d .compartir-sep{width:100%;height:0;margin:4px 0 2px;border:0;border-top:1px solid var(--border)}.ab3d .compartir-aviso{margin:0;font-size:12px;line-height:1.4;font-weight:600;color:var(--foreground)}.ab3d .escuadra-menu{position:relative;display:inline-flex}.ab3d .btn-escuadra{gap:5px;padding:0 9px}.ab3d .escuadra-grados{font-size:12px;font-variant-numeric:tabular-nums}.ab3d .escuadra-flyout{position:absolute;bottom:calc(100% + 6px);left:0;z-index:40;width:210px;background:var(--popover);color:var(--popover-foreground);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:10px;display:flex;flex-direction:column;gap:6px}.ab3d .escuadra-flyout .btn{justify-content:flex-start;height:30px}.ab3d .escuadra-title{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted-foreground);font-weight:600;margin-bottom:2px}.ab3d .escuadra-campo{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted-foreground)}.ab3d .escuadra-campo input{flex:1;min-width:0;height:30px}.ab3d .escuadra-flyout.snap-tipos{width:268px}.ab3d .snap-tipo{display:grid;grid-template-columns:18px 1fr 14px;align-items:center;gap:8px;min-height:26px;font-size:12px;line-height:1.25;color:var(--foreground);cursor:pointer}.ab3d .snap-tipo input[type=checkbox]{width:14px;height:14px;margin:0;flex:none;accent-color:var(--primary)}.ab3d .snap-tipo svg{color:var(--muted-foreground);justify-self:center}.ab3d .snap-tipo-rotulo{min-width:0}.ab3d .snap-tipo:has(input:not(:checked)) svg,.ab3d .snap-tipo:has(input:not(:checked)) .snap-tipo-rotulo{opacity:.45}.ab3d .barra-superior .btn:not(.settings-item){height:36px}.ab3d .barra-superior .btn.btn-icon:not(.settings-item){width:36px;height:36px}.ab3d .barra-superior .pdf-flyout .btn,.ab3d .barra-superior .escuadra-flyout .btn{height:30px}.ab3d .barra-superior>select,.ab3d .barra-superior .bar-group select,.ab3d .barra-superior .bar-field input[type=text]{height:36px}.ab3d .barra-superior{display:flex;align-items:center;flex:0 0 auto;height:56px;overflow:visible;gap:6px 4px;padding:8px 12px 8px 0;background:var(--toolbar);border-bottom:1px solid var(--border);justify-content:flex-end}.ab3d .rotulos-vista{position:absolute;bottom:10px;left:12px;max-width:calc(100% - 20px - var(--mfb-w, 320px));z-index:8;display:flex;flex-wrap:nowrap;align-items:center;gap:10px;pointer-events:none}.ab3d .rotulos-vista .view-state-hint{position:static}.ab3d .view-state-hint{position:absolute;top:24px;left:12px;z-index:7;display:flex;gap:5px;font-size:13.2px;color:var(--muted-foreground);opacity:1;pointer-events:none;-webkit-user-select:none;user-select:none;white-space:nowrap}.ab3d .view-state{display:flex;align-items:center;gap:5px;font-size:11px;color:#6b7280;white-space:nowrap;min-width:0;overflow:hidden;text-overflow:ellipsis;padding:0 4px;-webkit-user-select:none;user-select:none}.ab3d .view-state-on{color:#111827;font-weight:600}.ab3d .view-state-sep{opacity:.45}.ab3d .bar-install-left{flex:none;margin-left:10px}.ab3d .bar-brand{display:flex;align-items:center;gap:0;min-width:0;flex-shrink:1;overflow:hidden;margin-right:auto;color:var(--muted-foreground);opacity:.38;pointer-events:none;-webkit-user-select:none;user-select:none;font-weight:700;font-size:26px;letter-spacing:.02em;white-space:nowrap}.ab3d .barra-superior>.tipwrap:has(>.bar-brand){margin-right:auto;min-width:0}.ab3d .logo-inicio{appearance:none;background:none;border:0;padding:0;font-family:inherit;pointer-events:auto;cursor:pointer;transition:opacity .12s ease}.ab3d .logo-inicio:hover,.ab3d .logo-inicio:focus-visible{opacity:.72}.ab3d .logo-inicio:focus-visible{outline:2px solid var(--ring, currentColor);outline-offset:2px;border-radius:4px}.ab3d .brand-cube{flex:none;width:84px;display:flex;align-items:center;justify-content:center}.ab3d .barra-superior-scroll{display:flex;align-items:center;flex:1 1 auto;min-width:0;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;gap:6px 4px}.ab3d .bar-group{display:flex;align-items:center;gap:6px;padding-right:10px;margin-right:4px;border-right:1px solid var(--border)}.ab3d .bar-group:last-child,.ab3d .bar-group-end{border-right:none}.ab3d .views3d-list{overflow-y:auto;padding:6px 0 0;font-size:12px;color:var(--foreground);display:grid;grid-template-columns:1fr 1fr;gap:2px 10px;align-content:start}.ab3d .caras-list{overflow-y:auto;padding:6px 0 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(66px,1fr));gap:3px;align-content:start}.ab3d .caras-fila{font:600 11px/1 ui-monospace,Cascadia Mono,monospace;padding:5px 4px;color:var(--ring, #2563eb);background:transparent;border:1px solid var(--borde, #e2e8f0);border-radius:5px;cursor:pointer;text-align:center}.ab3d .caras-fila:hover{background:color-mix(in srgb,var(--ring, #2563eb) 10%,transparent)}.ab3d .caras-fila.es-actual{border-color:var(--ring, #2563eb);background:color-mix(in srgb,var(--ring, #2563eb) 16%,transparent)}.ab3d .caras-fila:focus-visible{outline:2px solid var(--ring, #2563eb);outline-offset:1px}.ab3d .caras-vacio,.ab3d .caras-nota{margin:6px 0 0;font-size:11px;line-height:1.35;color:var(--muted, #64748b)}.ab3d .section-3d{display:flex;flex-direction:column;min-height:0;overflow:hidden}.ab3d .section-3d .field-actions .btn{min-height:28px;font-size:12px}.ab3d .views3d-title{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted-foreground);font-weight:600;margin-bottom:6px}.ab3d .views3d-actions{display:flex;gap:6px;margin-bottom:6px}.ab3d .views3d-actions .btn{flex:1;height:26px;padding:0 6px}.ab3d .views3d-empty{color:var(--muted-foreground);line-height:1.4;grid-column:1 / -1}.ab3d .views3d-row{display:flex;align-items:center;gap:4px;padding:2px 0}.ab3d .views3d-row.active .views3d-name{font-weight:700}.ab3d .views3d-name{flex:1;min-width:0;text-align:left;background:none;border:none;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--foreground);font-size:12px;padding:2px}.ab3d .views3d-name:hover{color:var(--primary)}.ab3d .views3d-del{background:none;border:none;cursor:pointer;color:#b91c1c;font-size:16px;line-height:1;padding:0 4px}.ab3d .model-file-bar{position:absolute;bottom:10px;right:10px;max-width:62%;flex-wrap:wrap;justify-content:flex-end;z-index:6;display:flex;align-items:center;gap:6px;padding:5px 7px;background:#ffffffeb;border:1px solid var(--border);border-radius:8px;box-shadow:0 2px 8px #0000001f}.ab3d .bar-group-end{margin-left:auto;padding-right:0}.ab3d .bar-label{color:var(--muted-foreground);white-space:nowrap;font-size:12px}.ab3d .bar-field{display:flex;align-items:center;gap:6px}.ab3d .bar-field .field-row{margin-bottom:0;gap:6px}.ab3d .bar-field .field-row label{flex:none;color:var(--muted-foreground);white-space:nowrap;font-size:12px}.ab3d .bar-field .field-row input[type=text]{width:40px}.ab3d .bar-slider input[type=range]{width:96px}.ab3d .bar-field .field-row select.bar-theme-select{width:48px}.ab3d .bar-laminas-fija{width:216px;justify-content:center;margin-right:-10px}.ab3d .bar-error{color:var(--destructive);font-size:12px;align-self:center;padding-left:10px}.ab3d .bar-dropdown{position:relative}.ab3d .bar-dropdown-menu{position:absolute;top:calc(100% + 6px);left:0;z-index:30;min-width:180px;background:var(--popover);color:var(--popover-foreground);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:4px;display:flex;flex-direction:column;gap:2px}.ab3d .model-file-bar .bar-dropdown-menu{top:auto;bottom:calc(100% + 6px)}.ab3d .bar-dropdown-menu button{text-align:left;border:none;background:none;padding:7px 8px;border-radius:var(--radius-sm);cursor:pointer;font-size:13px;color:var(--popover-foreground);font-family:inherit}.ab3d .bar-dropdown-menu button:hover{background:var(--accent)}.ab3d .barra-inferior{flex:0 0 203px;width:100%;display:flex;flex-direction:column;min-height:0;background:var(--toolbar);border-top:1px solid var(--border)}.ab3d .barra-inferior--collapsed{flex-basis:auto}.ab3d .barra-inferior-toggle-row{flex:0 0 auto;display:flex;justify-content:center}.ab3d .barra-inferior-toggle{width:100%;border:none;background:color-mix(in srgb,var(--foreground) 7%,transparent);color:var(--muted-foreground);cursor:pointer;display:flex;justify-content:space-around;align-items:center;font-size:22px;line-height:.5;padding:2px 10px;text-align:center}.ab3d .barra-inferior-toggle:hover{color:var(--foreground);background:var(--accent)}.ab3d .barra-inferior-cols{flex:1;min-height:0;display:flex;gap:18px;overflow-x:auto;overflow-y:hidden;padding:0 16px 12px}.ab3d .props-panel{position:absolute;top:10px;right:calc(var(--regla-w, 0px) + 10px);z-index:8;width:317px;max-height:calc(100% - 28px - var(--mfb-h, 0px));overflow-y:auto;background:var(--card);color:var(--card-foreground);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:12px}.ab3d .field-stack{display:flex;flex-direction:column;gap:5px;margin-bottom:10px}.ab3d .field-stack>label{font-size:12px;color:var(--foreground)}.ab3d .props-panel-title{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted-foreground);font-weight:600;margin-bottom:10px}.ab3d .check-row{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--foreground);padding:2px 0;cursor:pointer}.ab3d .check-row input[type=checkbox]{width:14px;height:14px;cursor:pointer;accent-color:var(--primary)}.ab3d .side-section{flex:1 1 0;min-width:158px;overflow-y:auto;padding-right:4px;margin-bottom:0}.ab3d .side-section-3d{flex:1 1 0;min-width:158px}.ab3d .side-section-activos{flex:1.35 1 0;min-width:190px}.ab3d .view-actives-last{flex-wrap:wrap}.ab3d .view-actives-last .check-row{flex:none;margin-left:6px;white-space:nowrap}.ab3d .view3d-toolbar{position:absolute;left:10px;bottom:10px;max-width:calc(100% - 20px);pointer-events:none;z-index:7;display:flex;flex-wrap:wrap;gap:6px;align-items:center}.ab3d .view3d-toolbar>*{pointer-events:auto}.ab3d .view3d-toolbar .btn{height:34px;gap:5px;font-size:11px}.ab3d .view3d-toolbar .btn.btn-icon{width:34px;height:34px}.ab3d .view3d-cabecera{position:absolute;top:10px;left:10px;right:12px;z-index:8;display:flex;flex-wrap:wrap;align-items:flex-start;gap:6px 10px;pointer-events:none}.ab3d .view3d-cabecera>.view3d-pintar{pointer-events:auto}.ab3d .view3d-cabecera>.view3d-hint{margin-left:auto}.ab3d .view3d-pintar{position:static;display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-width:0;max-width:100%}.ab3d .view3d-pintar .btn{height:34px}.ab3d .view3d-pintar-botones{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:6px}.ab3d .view3d-pintar-panel{display:flex;flex-direction:column;gap:4px;padding:8px;border-radius:var(--radius);border:1px solid var(--border);background:var(--background);box-shadow:0 2px 8px #0000001f}.ab3d .view3d-pintar-fila{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--muted-foreground);white-space:nowrap}.ab3d .view3d-pintar-fila input[type=range]{width:96px}.ab3d .view3d-pintar-select{height:26px;padding:0 4px;font-size:11px}.ab3d .view3d-pintar-valor{min-width:42px;text-align:right;font-variant-numeric:tabular-nums}.ab3d .view3d-pintar-color{width:26px;height:22px;padding:1px;border-radius:4px;border:1px solid var(--border);background:var(--background);cursor:pointer}.ab3d .view3d-hint{font-size:13.2px;color:var(--muted-foreground);opacity:1;pointer-events:none;-webkit-user-select:none;user-select:none;white-space:nowrap}.ab3d .layout-library{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin-top:6px}.ab3d .btn.layout-lib-item{display:flex;flex-direction:column;align-items:center;gap:2px;height:auto;padding:5px 3px;font-size:10px;line-height:1.15;text-align:center;white-space:normal}.ab3d .layout-lib-item svg{width:26px;height:26px;flex:none}.ab3d .side-section h3{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--foreground);margin-bottom:10px;font-weight:600}.ab3d .side-hint{color:var(--muted-foreground);font-size:12px;line-height:1.5}.ab3d .side-readonly{color:var(--foreground);font-size:13px;font-variant-numeric:tabular-nums}.ab3d .field-group{background:var(--background);border:1px solid var(--border);border-radius:var(--radius-md);padding:12px;margin-bottom:12px}.ab3d .field-group:last-child{margin-bottom:0}.ab3d .field-group-title{font-size:12px;color:var(--foreground);margin-bottom:10px;font-weight:600}.ab3d .field-row select,.ab3d .field-row input[type=text],.ab3d .field-row input[type=number]{width:128px}.ab3d .field-actions{display:flex;gap:8px;margin-top:10px}.ab3d .field-actions .btn{flex:1 1 0;min-width:0;height:auto;min-height:32px;padding:3px 6px;font-size:11px;line-height:1.2;white-space:normal;text-align:center;overflow-wrap:break-word}.ab3d .lock-hide-row{display:flex;gap:6px;justify-content:flex-end;margin:-4px 0 10px}.ab3d .lock-hide-row .btn-icon{width:28px;height:28px}.ab3d .field-fieldset{border:none;margin:0;padding:0;min-inline-size:0}.ab3d .field-fieldset:disabled{opacity:.55}.ab3d .levels-list{display:flex;flex-direction:column;gap:2px}.ab3d .level-row{display:flex;align-items:center;gap:4px}.ab3d .level-row .btn-icon{width:24px;height:24px;flex:none}.ab3d .level-row.view-row-active{background:var(--primary);border-radius:var(--radius-sm);padding:2px 4px}.ab3d .level-row.view-row-active .level-name,.ab3d .level-row.view-row-active .btn-icon{color:var(--primary-foreground)}.ab3d .level-row.view-row-active .btn-icon{background:transparent;border-color:transparent}.ab3d .level-row.view-row-active .btn-icon:hover:not(:disabled){background:color-mix(in srgb,var(--primary-foreground) 22%,transparent);border-color:color-mix(in srgb,var(--primary-foreground) 45%,transparent)}.ab3d .barra-inferior .levels-row{padding:2px 6px}.ab3d .barra-inferior .levels-row input[type=text]{height:22px}.ab3d .barra-inferior .field-row{margin-bottom:4px}.ab3d .barra-inferior .field-row select,.ab3d .barra-inferior .field-row input[type=text],.ab3d .barra-inferior .field-row input[type=number]{height:26px}.ab3d .levels-row{display:flex;align-items:center;gap:6px;padding:4px 6px;border-radius:var(--radius-sm)}.ab3d .levels-row.active{background:var(--accent)}.ab3d .levels-radio{border:none;background:none;cursor:pointer;font-size:13px;color:var(--primary);padding:0 2px;line-height:1}.ab3d .levels-name{flex:1;cursor:pointer;color:var(--foreground);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ab3d .levels-row input[type=text]{flex:1;min-width:0;height:26px}.ab3d .levels-elev{width:58px;height:26px;text-align:right;font-variant-numeric:tabular-nums}.ab3d .levels-del{border:none;background:none;cursor:pointer;color:var(--muted-foreground);font-size:15px;line-height:1;padding:0 2px}.ab3d .levels-del:hover:not(:disabled){color:var(--destructive)}.ab3d .levels-del:disabled{opacity:.3;cursor:default}.ab3d .rooms-list{display:flex;flex-direction:column;gap:2px}.ab3d .rooms-row{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:5px 6px;border-radius:var(--radius-sm)}.ab3d .rooms-row:hover{background:var(--accent)}.ab3d .rooms-row-name{cursor:pointer;color:var(--foreground);flex:1}.ab3d .rooms-color{width:22px;height:22px;padding:0;border:1px solid var(--border);border-radius:var(--radius-sm);background:none;cursor:pointer;flex:none}.ab3d .rooms-color::-webkit-color-swatch-wrapper{padding:2px}.ab3d .rooms-color::-webkit-color-swatch{border:none;border-radius:3px}.ab3d .rooms-row-name:hover{text-decoration:underline}.ab3d .rooms-row input[type=text]{flex:1;height:26px}.ab3d .rooms-row-area{color:var(--muted-foreground);font-variant-numeric:tabular-nums;white-space:nowrap}.ab3d .rooms-total{display:flex;justify-content:space-between;margin-top:8px;padding:8px 6px 0;border-top:1px solid var(--border);font-weight:600;color:var(--foreground);font-variant-numeric:tabular-nums}.ab3d .btn-primary{background:var(--primary);color:var(--primary-foreground);border-color:var(--primary)}.ab3d .btn-primary:hover{opacity:.92}.ab3d .bar-dropdown-sep{height:1px;margin:4px 2px;background:var(--border)}.ab3d .bar-dropdown-fila{display:flex;align-items:center;gap:2px}.ab3d .bar-dropdown-fila>button:first-child{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ab3d .bar-dropdown-accion{flex:0 0 auto;min-width:32px;text-align:center;opacity:.7}.ab3d .bar-dropdown-accion:hover{opacity:1}.ab3d .bar-dropdown-accion.danger:hover{color:var(--destructive)}.ab3d .bar-dropdown-aviso{padding:6px 8px;font-size:12px;opacity:.8;max-width:240px}.ab3d .bar-dropdown-marca{font-size:11px;opacity:.75;white-space:nowrap}.ab3d .editor-badge{display:inline-flex;align-items:center;padding:3px 8px;border-radius:var(--radius-sm);background:var(--accent);color:var(--accent-foreground, var(--foreground));border:1px solid var(--border);font-size:11px;font-weight:700;letter-spacing:.04em;white-space:nowrap}.ab3d .bar-dropdown-info{padding:6px 8px 2px;font-size:12px;color:var(--muted-foreground, var(--foreground));opacity:.75}.ab3d .bar-dropdown-row{display:flex;align-items:center;gap:2px}.ab3d .bar-dropdown-row .bar-dropdown-row-main{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ab3d .bar-dropdown-row .bar-dropdown-row-del{flex:0 0 auto}.ab3d .btn-sm{padding:3px 8px;font-size:12px}.ab3d .floating-tools{position:absolute;left:10px;top:6px;z-index:7;display:flex;align-items:center;gap:6px;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;max-width:calc(100% - 347px)}.ab3d .float-btn{background:#ffffffeb;box-shadow:0 1px 4px #0000001f}.ab3d .laminas-bar{position:relative;justify-content:center;padding-left:12px}.ab3d .laminas-bar .laminas-bar-centro{padding-right:0;border-right:none;margin-right:0}.ab3d .laminas-bar .laminas-bar-fin{position:absolute;right:12px;top:50%;transform:translateY(-50%);margin-left:0}.ab3d .floating-tools--centrada{left:50%;transform:translate(-50%);justify-content:center;top:auto;bottom:10px;z-index:8;max-width:calc(100% - 20px);background:#ffffffeb;border:1px solid var(--border);border-radius:8px;box-shadow:0 2px 8px #0000001f;padding:5px 7px}.ab3d .btn.btn-contrast{background:var(--primary);color:var(--primary-foreground);border-color:var(--primary);font-weight:700}.ab3d .btn.btn-contrast:hover:not(:disabled){background:var(--primary);color:var(--primary-foreground);opacity:.9}.ab3d .update-banner{position:fixed;bottom:16px;left:50%;transform:translate(-50%);z-index:1000;display:flex;align-items:center;gap:12px;padding:10px 16px;background:var(--card);color:var(--card-foreground);border:1px solid var(--border);border-radius:10px;box-shadow:0 4px 16px #0003;font-size:13px}.ab3d .btn.btn-brand{background:var(--brand-accent);color:#fff;border-color:var(--brand-accent);font-weight:700}.ab3d .btn.btn-brand:hover:not(:disabled){background:var(--brand-accent);color:#fff;opacity:.9}.ab3d .project-selector{flex:0 0 auto;max-width:170px;overflow:hidden;cursor:default}.ab3d .project-selector:hover{background:var(--background);color:var(--foreground)}.ab3d .project-selector-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ab3d .spec-card{border:1px solid var(--border);border-radius:var(--radius-sm);padding:8px;margin-bottom:8px;background:var(--muted)}.ab3d .spec-textarea{width:100%;box-sizing:border-box;resize:vertical;font-family:inherit;font-size:13px;padding:6px 8px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--background);color:var(--foreground);margin-top:4px}.ab3d .spec-fields{display:flex;flex-direction:column;gap:4px;margin:8px 0;padding-top:8px;border-top:1px solid var(--border)}.ab3d .spec-check{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--foreground);cursor:pointer}.ab3d .spec-check input{cursor:pointer}.ab3d .start-screen{position:relative;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:22px;background:var(--background);color:var(--foreground);padding:24px;overflow-x:hidden;overflow-y:auto}.ab3d .start-scroll-hint{position:fixed;left:50%;bottom:16px;transform:translate(-50%);z-index:3;pointer-events:none;display:grid;place-items:center;width:34px;height:34px;border-radius:999px;background:color-mix(in srgb,var(--background) 72%,transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);font-size:20px;line-height:1;color:var(--muted-foreground);opacity:.7;transition:opacity .3s ease;animation:start-scroll-bob 2.2s ease-in-out infinite}.ab3d .start-scroll-hint--apagada{opacity:0}@keyframes start-scroll-bob{0%,to{transform:translate(-50%)}50%{transform:translate(-50%,5px)}}@media(prefers-reduced-motion:reduce){.ab3d .start-scroll-hint{animation:none}}.ab3d .start-screen>.start-brand{margin-top:auto}.ab3d .start-screen>.start-footer{margin-bottom:auto}.ab3d .start-brand{position:relative;z-index:2;display:flex;align-items:center;gap:14px;color:var(--foreground);font-weight:800;font-size:34px;letter-spacing:.02em;-webkit-user-select:none;user-select:none}@media(min-width:900px){.ab3d .start-brand{font-size:46px;letter-spacing:.14em;gap:22px}.ab3d .start-brand svg{width:72px;height:72px}}.ab3d .start-brand svg{color:var(--muted-foreground)}.ab3d .brand-a{color:var(--brand-accent)}.ab3d .start-suggest{position:relative;z-index:2;font-size:17px;color:var(--foreground);text-align:center;max-width:560px;background:var(--background);background:color-mix(in srgb,var(--background) 80%,transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);padding:12px 20px;border-radius:12px}.ab3d .start-suggest-link{color:var(--primary);font-weight:600;text-decoration:none}.ab3d .start-suggest-link:hover{text-decoration:underline}.ab3d .start-footer{position:relative;z-index:2;font-size:16px;color:var(--muted-foreground);text-align:center;max-width:560px;background:var(--background);background:color-mix(in srgb,var(--background) 80%,transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);padding:12px 20px;border-radius:12px}.ab3d .start-terms-link{background:none;border:none;padding:0;cursor:pointer;color:var(--muted-foreground);font:inherit;text-decoration:underline}.ab3d .start-terms-link:hover{color:var(--foreground)}.ab3d .modal-overlay{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:24px;background:#00000073}.ab3d .modal-card{width:min(560px,100%);max-height:80vh;max-height:80dvh;overflow-y:auto;display:flex;flex-direction:column;background:var(--card);color:var(--card-foreground);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md)}.ab3d .modal-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--border)}.ab3d .modal-title{margin:0;font-size:16px;font-weight:700}.ab3d .modal-body{padding:16px;overflow-y:auto;font-size:13px;line-height:1.5}.ab3d .modal-body p{margin:0 0 10px}.ab3d .modal-actions{display:flex;justify-content:flex-end;gap:8px;padding:12px 16px;border-top:1px solid var(--border)}.ab3d .modal-field-label{display:block;margin-bottom:6px;font-size:13px;font-weight:600;color:var(--foreground)}.ab3d .modal-input{width:100%;box-sizing:border-box;height:36px;padding:0 10px;font:inherit;font-size:14px;color:var(--foreground);background:var(--input, var(--background));border:1px solid var(--border);border-radius:var(--radius-sm)}.ab3d .modal-input:focus{outline:none;border-color:var(--ring, var(--primary))}.ab3d .feedback-fab{position:fixed;right:16px;bottom:16px;z-index:90;width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:999px;border:1px solid var(--border);background:var(--primary);color:var(--primary-foreground);box-shadow:var(--shadow-md);cursor:pointer}.ab3d .feedback-fab:hover{filter:brightness(1.08)}.ab3d .feedback-pop{position:fixed;right:16px;bottom:70px;z-index:90;width:min(320px,calc(100vw - 32px));display:flex;flex-direction:column;gap:10px;padding:14px;background:var(--card);color:var(--card-foreground);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md)}.ab3d .feedback-pop-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.ab3d .feedback-pop-title{font-size:13px;font-weight:700;line-height:1.3}.ab3d .feedback-text{width:100%;resize:vertical;min-height:72px;padding:8px 10px;font:inherit;font-size:13px;color:var(--foreground);background:var(--input, var(--background));border:1px solid var(--border);border-radius:var(--radius-sm)}.ab3d .feedback-text:focus{outline:none;border-color:var(--ring, var(--primary))}.ab3d .feedback-pop-actions{display:flex;align-items:center;justify-content:space-between;gap:8px}.ab3d .feedback-hint{font-size:11px;color:var(--muted-foreground)}.ab3d .start-card{position:relative;z-index:2;width:min(560px,100%);color:var(--card-foreground);border-radius:var(--radius-md);padding:28px 28px 22px}.ab3d .start-card:before{content:"";position:absolute;inset:0;z-index:-1;border-radius:var(--radius-md);background:var(--card);background:color-mix(in srgb,var(--card) 62%,transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 22px,#000 calc(100% - 22px),transparent 100%),linear-gradient(to right,transparent 0,#000 22px,#000 calc(100% - 22px),transparent 100%);mask-image:linear-gradient(to bottom,transparent 0,#000 22px,#000 calc(100% - 22px),transparent 100%),linear-gradient(to right,transparent 0,#000 22px,#000 calc(100% - 22px),transparent 100%);-webkit-mask-composite:source-in;mask-composite:intersect}.ab3d .start-title{margin:0 0 4px;font-size:24px;font-weight:700}.ab3d .start-sub{margin:0 0 20px;color:var(--muted-foreground);font-size:14px}.ab3d .start-claim{margin:0 0 8px;font-size:19px;line-height:1.35;font-weight:700;letter-spacing:-.01em;color:var(--card-foreground)}.ab3d .start-demo{display:block;width:100%;aspect-ratio:1280 / 614;margin:0 0 18px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--muted);object-fit:cover}@media(prefers-reduced-motion:reduce){.ab3d .start-demo{animation:none}}.ab3d .start-badges{display:flex;flex-wrap:nowrap;align-items:baseline;justify-content:space-between;gap:6px;margin:0 0 20px}.ab3d .start-nota-local{display:none}.ab3d .start-nota-cuenta{display:block;margin:-8px 0 18px;font-size:12.5px;line-height:1.4;color:var(--muted-foreground)}.ab3d .start-badges .tipwrap{flex:0 0 auto;display:inline-flex}.ab3d .start-badge{flex:0 0 auto;color:var(--muted-foreground);font-size:12px;font-weight:500;white-space:nowrap}.ab3d .start-badge--strong{color:var(--foreground);font-weight:600}.ab3d .start-card--disenos{margin-top:16px}.ab3d .start-card-titulo{margin:0 0 16px;font-size:17px;font-weight:700;line-height:1.25;color:var(--card-foreground)}.ab3d .start-actions-row{display:flex;align-items:stretch;gap:8px;margin-bottom:22px}.ab3d .start-actions{display:flex;gap:10px;flex-wrap:wrap}.ab3d .start-actions--primary{flex:1 1 auto;min-width:0}.ab3d .start-actions--primary .tipwrap{flex:1 1 auto;min-width:0;display:flex}.ab3d .start-disenar-fila{display:flex;margin:-12px 0 22px}.ab3d .start-disenar-fila .tipwrap{flex:1 1 auto;min-width:0;display:flex}.ab3d .start-cta-secundaria{flex:1 1 100%;justify-content:center;min-height:40px}.ab3d .start-cta{flex:1 1 100%;justify-content:center;min-height:48px;font-size:15px;font-weight:700}.ab3d .start-actions--secondary{flex:0 0 auto;flex-wrap:nowrap;gap:8px}.ab3d .start-actions--secondary .tipwrap{flex:0 0 auto;display:inline-flex}.ab3d .start-actions--secondary .btn-icon{width:auto;height:auto;min-height:48px;gap:6px;padding:0 10px}.ab3d .start-action-label{font-size:12.5px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ab3d .start-error{margin:0 0 12px;padding:8px 10px;border:1px solid var(--destructive, #dc2626);border-radius:var(--radius-sm);color:var(--destructive, #dc2626);font-size:12.5px}.ab3d .start-projects-title{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted-foreground);margin-bottom:8px}.ab3d .start-projects-title{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}.ab3d .start-projects-cuenta{text-transform:none;letter-spacing:normal}.ab3d .start-projects-lista{max-height:165px;overflow-y:auto;overscroll-behavior:contain}.ab3d .start-catalogo{margin:0 0 22px}.ab3d .start-catalogo-titulo{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted-foreground);margin-bottom:8px}.ab3d .start-catalogo-fila{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;border:none;border-top:1px solid var(--border);background:none;cursor:pointer;padding:10px 8px;border-radius:var(--radius-sm);color:var(--foreground);font-family:inherit;min-height:48px}.ab3d .start-catalogo-fila:hover:not(:disabled){background:var(--accent)}.ab3d .start-catalogo-fila:disabled{cursor:default;opacity:.55}.ab3d .start-catalogo-texto{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}.ab3d .start-catalogo-nombre{font-size:14px;font-weight:600;line-height:1.25}.ab3d .start-catalogo-resumen{font-size:12px;color:var(--muted-foreground);line-height:1.35}.ab3d .start-catalogo-datos{flex:0 0 auto;font-size:12px;color:var(--muted-foreground);white-space:nowrap;font-variant-numeric:tabular-nums}.ab3d .start-catalogo-fila--herramienta{border-top:1px solid var(--foreground)}.ab3d .start-catalogo-datos--accion{font-size:18px;line-height:1}.ab3d .start-empty{color:var(--muted-foreground);font-size:13px;padding:10px 0}.ab3d .start-project-row{display:flex;align-items:center;gap:6px;padding:4px 0;border-top:1px solid var(--border)}.ab3d .start-project-open{flex:1;display:flex;align-items:baseline;justify-content:space-between;gap:12px;text-align:left;border:none;background:none;cursor:pointer;padding:8px;border-radius:var(--radius-sm);color:var(--foreground);font-family:inherit}.ab3d .start-project-open:hover{background:var(--accent)}.ab3d .start-project-name{font-size:14px;font-weight:500}.ab3d .start-project-when{font-size:12px;color:var(--muted-foreground);white-space:nowrap}.ab3d .grid-backdrop-canvas,.ab3d .grid-backdrop-fallback{position:absolute;inset:0;z-index:0;display:block;width:100%;height:100%}.ab3d .grid-backdrop-fallback{background-color:var(--background);background-image:repeating-linear-gradient(90deg,transparent 0 1px,color-mix(in srgb,var(--foreground) 18%,transparent) 1px 2px,transparent 2px 320px),repeating-linear-gradient(0deg,transparent 0 1px,color-mix(in srgb,var(--foreground) 18%,transparent) 1px 2px,transparent 2px 320px),repeating-linear-gradient(90deg,color-mix(in srgb,var(--brand-accent) 20.4%,transparent) 0 3px,transparent 3px 320px),repeating-linear-gradient(0deg,color-mix(in srgb,var(--brand-accent) 20.4%,transparent) 0 3px,transparent 3px 320px),repeating-linear-gradient(90deg,color-mix(in srgb,var(--brand-accent) 15.6%,transparent) 0 2px,transparent 2px 160px),repeating-linear-gradient(0deg,color-mix(in srgb,var(--brand-accent) 15.6%,transparent) 0 2px,transparent 2px 160px),repeating-linear-gradient(90deg,color-mix(in srgb,var(--brand-accent) 5.4%,transparent) 0 1px,transparent 1px 32px),repeating-linear-gradient(0deg,color-mix(in srgb,var(--brand-accent) 5.4%,transparent) 0 1px,transparent 1px 32px)}:root[data-theme=matrix] .ab3d .grid-backdrop-fallback{background-image:repeating-linear-gradient(90deg,transparent 0 1px,color-mix(in srgb,var(--foreground) 15.6%,transparent) 1px 2px,transparent 2px 320px),repeating-linear-gradient(0deg,transparent 0 1px,color-mix(in srgb,var(--foreground) 15.6%,transparent) 1px 2px,transparent 2px 320px),repeating-linear-gradient(90deg,color-mix(in srgb,var(--brand-accent) 20.4%,transparent) 0 3px,transparent 3px 320px),repeating-linear-gradient(0deg,color-mix(in srgb,var(--brand-accent) 20.4%,transparent) 0 3px,transparent 3px 320px),repeating-linear-gradient(90deg,color-mix(in srgb,var(--brand-accent) 15.6%,transparent) 0 2px,transparent 2px 160px),repeating-linear-gradient(0deg,color-mix(in srgb,var(--brand-accent) 15.6%,transparent) 0 2px,transparent 2px 160px),repeating-linear-gradient(90deg,color-mix(in srgb,var(--brand-accent) 5.4%,transparent) 0 1px,transparent 1px 32px),repeating-linear-gradient(0deg,color-mix(in srgb,var(--brand-accent) 5.4%,transparent) 0 1px,transparent 1px 32px)}.ab3d .grid-hud{position:absolute;inset:0;z-index:1;pointer-events:none}.ab3d .grid-hud-corner{position:absolute;width:20px;height:20px;border:0 solid color-mix(in srgb,var(--brand-accent) 45%,transparent)}.ab3d .grid-hud-corner--tl{top:18px;left:18px;border-top-width:2px;border-left-width:2px}.ab3d .grid-hud-corner--tr{top:18px;right:18px;border-top-width:2px;border-right-width:2px}.ab3d .grid-hud-corner--bl{bottom:18px;left:18px;border-bottom-width:2px;border-left-width:2px}.ab3d .grid-hud-corner--br{bottom:18px;right:18px;border-bottom-width:2px;border-right-width:2px}.ab3d .grid-hud-item{position:absolute;display:flex;align-items:center;gap:7px;font-family:JetBrains Mono,Fira Code,Courier New,ui-monospace,monospace;font-size:11px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--muted-foreground);white-space:nowrap}.ab3d .grid-hud-build{opacity:.45;letter-spacing:.02em}.ab3d .grid-hud-item--tl{top:25px;left:50px}.ab3d .grid-hud-item--tr{top:25px;right:50px}.ab3d .grid-hud-item--bl{bottom:25px;left:50px}.ab3d .grid-hud-item--br{bottom:25px;right:50px}.ab3d .grid-hud-dot{width:6px;height:6px;flex:none;border-radius:999px;background:var(--brand-accent);animation:ab3d-grid-hud-blink 1.6s steps(1) infinite}@keyframes ab3d-grid-hud-blink{0%,49%{opacity:1}50%,to{opacity:.15}}.ab3d .versions-empty{color:var(--muted-foreground, var(--foreground));font-size:13px}.ab3d .versions-list{list-style:none;margin:0;padding:0;max-height:50vh;overflow-y:auto}.ab3d .versions-row{display:flex;align-items:center;gap:10px;padding:8px 4px;border-bottom:1px solid var(--border)}.ab3d .versions-row:last-child{border-bottom:none}.ab3d .versions-when{flex:1 1 auto;min-width:0;font-size:13px}.ab3d .versions-tag{color:var(--muted-foreground, var(--foreground));font-size:11px}.ab3d .versions-size{flex:0 0 auto;color:var(--muted-foreground, var(--foreground));font-size:12px;font-variant-numeric:tabular-nums}.ab3d .versions-origen{flex:0 0 auto;font-size:11px;padding:1px 6px;border-radius:999px;border:1px solid var(--border);color:var(--muted-foreground, var(--foreground));white-space:nowrap}.ab3d .versions-origen--nube{border-color:color-mix(in srgb,var(--brand-accent) 40%,transparent);color:var(--brand-accent)}.ab3d .versions-aviso{margin:0 0 8px;font-size:12px;line-height:1.4;color:var(--muted-foreground, var(--foreground))}.ab3d .btn-small{height:28px;padding:0 10px;font-size:12px}.ab3d .persist-warning{position:fixed;top:12px;left:50%;transform:translate(-50%);z-index:120;max-width:min(560px,calc(100vw - 24px));display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--warning-bg, #7f1d1d);color:var(--warning-fg, #fff);box-shadow:var(--shadow-md);font-size:13px}.ab3d .persist-warning-text{flex:1 1 auto}.ab3d .persist-warning-close{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;border-radius:6px;background:transparent;color:inherit;cursor:pointer;opacity:.85}.ab3d .persist-warning-close:hover{opacity:1;background:#ffffff26}.ab3d .pane-3d-cargando{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;opacity:.6;font-size:13px}.ab3d .section-3d-botones{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:8px}.ab3d .floating-tools-rotulo{position:absolute;top:calc(6px + var(--ft-h, 40px) + 3px);left:10px;font-size:13.2px;color:var(--muted-foreground);z-index:7;pointer-events:none;-webkit-user-select:none;user-select:none;white-space:nowrap}.ab3d .model-file-bar-rotulo{position:absolute;bottom:100%;left:0;margin-bottom:3px;font-size:11px;color:var(--muted-foreground);pointer-events:none;-webkit-user-select:none;user-select:none;white-space:nowrap}.ab3d .cielo-fila{display:flex;flex-direction:column;gap:4px;padding:6px 0 2px}.ab3d .cielo-rotulo{font-size:10.5px;font-weight:600;color:var(--foreground);opacity:.75}.ab3d .cielo-muestras{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.ab3d .cielo-muestra{width:22px;height:22px;padding:0;border-radius:4px;border:1px solid rgba(0,0,0,.25);cursor:pointer}.ab3d .cielo-muestra.activa{outline:2px solid var(--foreground);outline-offset:1px;box-shadow:inset 0 0 0 1.5px #fff}.ab3d .cielo-libre{width:26px;height:22px;padding:0;border:1px solid rgba(0,0,0,.25);border-radius:4px;background:none;cursor:pointer}.ab3d .panes--solo-3d .pane-2d{flex:0 0 0!important;width:0;min-width:0;overflow:hidden;visibility:hidden}.ab3d .panes--solo-3d .pane-3d{flex:1 1 100%!important}.ab3d .panes--solo-2d .pane-3d{flex:0 0 0!important;width:0;min-width:0;overflow:hidden;visibility:hidden}.ab3d .panes--solo-2d .pane-2d{flex:1 1 100%!important}.ab3d .panes--solo-2d .splitter,.ab3d .panes--solo-3d .view3d-hint{display:none}.ab3d .panes--solo-3d .view3d-toolbar{left:auto;right:10px;bottom:calc(18px + var(--mfb-h, 0px));justify-content:flex-end}.ab3d .vista3d-rotulo{display:inline-flex;align-items:center;padding:0 6px;font-size:10.5px;font-weight:700;letter-spacing:.02em;white-space:nowrap;color:#0e7490}.ab3d .vista3d-aviso{display:inline-flex;align-items:center;gap:6px;max-width:42ch;padding:2px 6px;border-radius:4px;font-size:10.5px;line-height:1.25;background:#fef3c7;color:#78350f}.ab3d .vista3d-aviso-cerrar{border:0;background:none;cursor:pointer;font-size:13px;line-height:1;color:inherit;padding:0 2px}.indicador-modo{display:flex;flex-direction:column;align-items:flex-start;gap:6px;pointer-events:none;max-width:min(92%,460px);position:relative;flex:0 0 auto}.indicador-modo-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;background:var(--card, #ffffff);border:1px solid var(--border, #e2e8f0);box-shadow:0 1px 3px #0000002e;font-size:12px;font-weight:700;letter-spacing:.02em;white-space:nowrap}.indicador-modo-punto{width:8px;height:8px;border-radius:50%;flex:0 0 auto}.indicador-modo-salir{pointer-events:auto;margin-left:4px;border:1px solid var(--border, #e2e8f0);background:transparent;border-radius:999px;font-size:11px;font-weight:600;padding:1px 8px;cursor:pointer;color:inherit}.indicador-modo-aviso{background:var(--card, #ffffff);border:1px solid var(--border, #e2e8f0);border-left:3px solid var(--destructive, #dc2626);border-radius:6px;padding:6px 10px;font-size:12px;line-height:1.35;box-shadow:0 1px 3px #0000002e;text-align:center}.ab3d .shortcuts-backdrop{position:fixed;inset:0;z-index:300;background:#0000006b;display:flex;align-items:center;justify-content:center;padding:16px}.ab3d .shortcuts-card{background:var(--card);color:var(--foreground);border:1px solid var(--border);border-radius:10px;box-shadow:0 12px 40px #0000004d;max-width:720px;width:100%;max-height:min(80vh,640px);overflow-y:auto;padding:16px 20px}.ab3d .shortcuts-card:focus-visible{outline:none;box-shadow:0 0 0 2px var(--background),0 0 0 4px var(--ring),0 12px 40px #0000004d}.ab3d .shortcuts-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.ab3d .shortcuts-head h2{margin:0;font-size:15px;font-weight:700}.ab3d .shortcuts-cols{display:grid;grid-template-columns:1fr 1fr;gap:8px 24px}@media(max-width:640px){.ab3d .shortcuts-cols{grid-template-columns:1fr}}.ab3d .shortcuts-cols h3{margin:8px 0 6px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted-foreground)}.ab3d .shortcuts-cols dl{margin:0}.ab3d .shortcuts-fila{display:flex;gap:10px;align-items:baseline;padding:3px 0}.ab3d .shortcuts-fila dt{flex-shrink:0;min-width:64px}.ab3d .shortcuts-fila dd{margin:0;font-size:12.5px;line-height:1.4}.ab3d .shortcuts-fila kbd{display:inline-block;padding:1px 7px;border:1px solid var(--border);border-bottom-width:2px;border-radius:5px;background:var(--muted);font:11px ui-monospace,monospace;white-space:nowrap}.ab3d .lt-flyout-item:focus-visible{outline:none;box-shadow:0 0 0 2px var(--background),0 0 0 4px var(--ring)}@media screen{[data-mando=pasiva] .ab3d [data-edita]{opacity:.45;pointer-events:none}[data-mando=pasiva] .ab3d .mando-switch :is(a,button,input,select,textarea){opacity:1;pointer-events:auto}}.ab3d .mando-switch{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:600;white-space:nowrap}.ab3d .mando-switch-estado{opacity:.5;text-transform:uppercase;letter-spacing:.04em}.ab3d .mando-switch--pasiva .mando-switch-estado{opacity:1;color:var(--destructive)}.ab3d .mando-switch-btn{height:24px;padding:0 8px;font-size:11px}.ab3d .regla-lateral{position:relative;flex:0 0 auto;background:var(--panel, #f8fafc);border-right:1px solid var(--borde, #e2e8f0);-webkit-user-select:none;user-select:none}.ab3d .regla-scroll{position:absolute;inset:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--ab-tinta2, #6a6659) 30%,transparent) transparent}.ab3d .regla-scroll::-webkit-scrollbar{width:5px}.ab3d .regla-scroll::-webkit-scrollbar-track{background:transparent}.ab3d .regla-scroll::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--ab-tinta2, #6a6659) 30%,transparent);border-radius:3px}.ab3d .regla-cubo-capa{position:absolute;inset:0;clip-path:inset(0 -12px);pointer-events:none;z-index:3}.ab3d .regla-cubo-capa>*{pointer-events:auto}.ab3d .regla-pista{position:relative;width:100%}.ab3d .regla-bajo-nnt{position:absolute;left:0;right:0;background:repeating-linear-gradient(45deg,transparent,transparent 4px,var(--borde, #e2e8f0) 4px,var(--borde, #e2e8f0) 5px);opacity:.5;pointer-events:none}.ab3d .regla-marca{position:absolute;left:0;width:8px;border-top:1px solid var(--borde, #cbd5e1);pointer-events:none}.ab3d .regla-marca.es-metro{width:13px}.ab3d .regla-metro{position:absolute;left:11px;top:-7px;font-size:8.5px;color:var(--texto-tenue, #94a3b8);font-variant-numeric:tabular-nums}.ab3d .regla-nivel{position:absolute;left:0;right:0;border-top:2px solid var(--texto, #334155);cursor:pointer}.ab3d .regla-nivel:after{content:"";position:absolute;left:0;right:0;top:-6px;height:10px}.ab3d .regla-nivel.tiene-recuadro{border-top-color:var(--ab-mostaza, #d4a017)}.ab3d .regla-nivel.tiene-recuadro .regla-nivel-rotulo{color:var(--ab-mostaza, #d4a017)}.ab3d .regla-nivel.es-natural{border-top-style:dotted}.ab3d .regla-nivel-rotulo{position:absolute;left:2px;top:-12px;font-size:9px;font-weight:700;color:var(--texto, #334155);background:var(--panel, #f8fafc);padding:0 2px}.ab3d{--ab-papel: #fffefb;--ab-tinta: #26251f;--ab-tinta2: #6a6659;--ab-ladrillo: #a33b2a;--ab-mostaza: #d4a017}.ab3d .nube-estado{display:flex;align-items:center;gap:6px;min-width:0;margin:0;font-size:11px;color:var(--texto-tenue, #64748b);white-space:nowrap}.ab3d .nube-estado-texto{overflow:hidden;text-overflow:ellipsis;max-width:34ch}.ab3d .nube-estado.es-aviso{color:var(--ab-ladrillo, #a33b2a)}.ab3d .nube-estado-cerrar{flex:0 0 auto;border:0;background:none;cursor:pointer;padding:0 2px;font-size:12px;line-height:1;color:inherit;opacity:.7}.ab3d .nube-estado-cerrar:hover{opacity:1}.ab3d .nube-estado-cerrar:focus-visible{outline:2px solid var(--ring, #2563eb);outline-offset:1px}.ab3d .rincon-ayuda{position:absolute;left:12px;bottom:calc(50px + var(--mfb-h, 0px));z-index:6;display:flex;align-items:flex-end;gap:8px;pointer-events:none}.ab3d .rincon-ayuda>*{pointer-events:auto}.ab3d .rincon-corte{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.ab3d .archiblock-en-corte,.ab3d .cartel-ayuda,.ab3d .giro-en-corte button{border:1px solid var(--borde, #e2e8f0);border-radius:8px;background:color-mix(in srgb,var(--panel, #f8fafc) 88%,transparent);box-shadow:0 1px 6px #0000001f}.ab3d .archiblock-en-corte:hover,.ab3d .cartel-ayuda--cerrado:hover,.ab3d .giro-en-corte button:hover{background:var(--panel, #f8fafc)}.ab3d .cartel-ayuda:focus-visible,.ab3d .cartel-ayuda button:focus-visible{outline:2px solid var(--ring, #2563eb);outline-offset:2px}.ab3d .cartel-ayuda--cerrado{display:grid;place-items:center;padding:6px 8px;cursor:pointer}.ab3d .cartel-ayuda--abierto{width:264px;display:flex;flex-direction:column;padding:8px 10px 10px;gap:6px}.ab3d .cartel-ayuda-cab{display:flex;align-items:center;justify-content:space-between;gap:8px}.ab3d .cartel-ayuda-titulo{color:var(--ab-ladrillo, #a33b2a);font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ab3d .cartel-ayuda-cerrar{flex:0 0 auto;width:18px;height:18px;display:grid;place-items:center;padding:0;border:0;border-radius:4px;background:transparent;color:var(--ab-tinta2, #6a6659);font-size:11px;line-height:1;cursor:pointer}.ab3d .cartel-ayuda-cerrar:hover{color:var(--ab-tinta, #26251f)}.ab3d .cartel-ayuda-cuerpo{height:132px;overflow-y:auto;color:var(--ab-tinta, #26251f);font-size:12px;line-height:1.45;scrollbar-width:thin}.ab3d .cartel-ayuda-cuerpo::-webkit-scrollbar{width:8px}.ab3d .cartel-ayuda-cuerpo::-webkit-scrollbar-thumb{background:var(--ab-tinta2, #6a6659);border-radius:4px;opacity:.4}.ab3d .archiblock-en-corte{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 8px;border:1px solid var(--borde, #e2e8f0);border-radius:8px;background:color-mix(in srgb,var(--panel, #f8fafc) 88%,transparent);box-shadow:0 1px 6px #0000001f;cursor:pointer;color:var(--ab-ladrillo, #a33b2a);font-size:9px;font-weight:700;letter-spacing:.03em;line-height:1}.ab3d .archiblock-en-corte:hover{background:var(--panel, #f8fafc)}.ab3d .archiblock-en-corte:focus-visible{outline:2px solid var(--ring, #2563eb);outline-offset:2px}.ab3d .giro-en-corte{display:flex;gap:4px}.ab3d .giro-en-corte button{width:28px;height:28px;display:grid;place-items:center;font-size:15px;line-height:1;color:var(--ab-tinta, #2b2b2b);border:1px solid var(--borde, #e2e8f0);border-radius:8px;background:color-mix(in srgb,var(--panel, #f8fafc) 88%,transparent);box-shadow:0 1px 6px #0000001f;cursor:pointer}.ab3d .giro-en-corte button:hover{background:var(--panel, #f8fafc)}.ab3d .giro-en-corte button:focus-visible{outline:2px solid var(--ring, #2563eb);outline-offset:2px}.ab3d .archiblock-flecha:hover .archiblock-flecha-punta{fill:var(--ab-ladrillo, #a33b2a)}.ab3d .regla-ojo{position:absolute;left:0;right:0;border-top:1px dotted var(--ab-ladrillo, #a33b2a);opacity:.8;pointer-events:none}.ab3d .regla-ojo span{position:absolute;right:2px;top:-10px;font-size:7.5px;font-weight:700;letter-spacing:.05em;color:var(--ab-ladrillo, #a33b2a)}.ab3d .regla-cubo{position:absolute;left:50%;transform:translate(-50%,-50%);cursor:grab;filter:drop-shadow(0 1px 3px rgba(38,37,31,.35));touch-action:none;z-index:3}.ab3d .regla-cubo:active{cursor:grabbing}.ab3d .regla-cubo:focus-visible{outline:2px solid var(--ring, #2563eb);outline-offset:2px}.ab3d .regla-cota{position:absolute;left:50%;transform:translate(-50%,-50%);font-size:9.5px;font-weight:700;font-variant-numeric:tabular-nums;font-family:ui-monospace,Cascadia Mono,JetBrains Mono,monospace;color:var(--ab-papel, #fffefb);background:var(--ab-ladrillo, #a33b2a);padding:1px 4px;border-radius:2px;white-space:nowrap;pointer-events:none;z-index:3}.ab3d .vinculo-archiblock{position:absolute;inset:0;pointer-events:none;z-index:4}.ab3d .vinculo-archiblock line{stroke:var(--ab-ladrillo, #a33b2a);stroke-width:1.5;stroke-dasharray:5 4;opacity:.8}.ab3d .archiblock-vinculo{filter:drop-shadow(0 2px 6px rgba(163,59,42,.55))}.ab3d .regla-lateral[data-vinculo] .regla-cubo{filter:drop-shadow(0 2px 7px rgba(38,37,31,.5))}@media(prefers-reduced-motion:reduce){.ab3d .regla-cubo{transition:none}}.ab3d .vn-resumen{display:grid;grid-template-columns:1fr auto;gap:2px 6px;padding:6px 8px;border-bottom:1px solid var(--borde, #e2e8f0)}.ab3d .vn-plegar{grid-row:1 / span 2;grid-column:2;align-self:center}.ab3d .vn-campo{display:grid;grid-template-columns:62px 1fr auto;align-items:baseline;gap:6px;background:none;border:0;padding:2px 0;text-align:left;cursor:pointer;color:inherit;font:inherit}.ab3d .vn-campo:hover .vn-valor{text-decoration:underline}.ab3d .vn-campo:focus-visible{outline:2px solid var(--ring, #2563eb);outline-offset:1px}.ab3d .nivel-nuevo{padding:4px 0 6px}.ab3d .nivel-nuevo .input{flex:1 1 auto;min-width:0;font-variant-numeric:tabular-nums}.ab3d .nivel-nuevo-aviso{margin-top:4px;color:var(--ab-ladrillo, #a33b2a)}.ab3d .vn-valor.es-libre{color:var(--ab-ladrillo, #a33b2a)}.ab3d .vn-etiqueta{font-size:9px;letter-spacing:.06em;color:var(--texto-tenue, #94a3b8)}.ab3d .vn-valor{font-size:12px;font-weight:600}.ab3d .vn-cota{font-size:12px;font-variant-numeric:tabular-nums;color:var(--texto, #334155)}.ab3d .vn-cota.es-libre{color:var(--ab-ladrillo, #a33b2a)}.ab3d .vn-cota.atenuada{opacity:.45}.ab3d .vn-cabecera{display:flex;align-items:center;justify-content:space-between;gap:6px}.ab3d .vn-titulo{flex:1;background:none;border:0;padding:4px 0;text-align:left;cursor:pointer;color:inherit;font:inherit;font-weight:700;font-size:11px;letter-spacing:.04em;text-transform:uppercase}.ab3d .vn-titulo:focus-visible{outline:2px solid var(--ring, #2563eb);outline-offset:1px}.ab3d .vn-cuerpo{padding-top:4px}.ab3d .vn-vistas{display:grid;gap:2px;margin-bottom:6px}.ab3d .vn-vista{display:flex;align-items:baseline;gap:6px;background:none;border:1px solid transparent;border-radius:4px;padding:3px 6px;text-align:left;cursor:pointer;color:inherit;font:inherit;font-size:12px}.ab3d .vn-vista-icono{flex:0 0 auto;color:var(--texto-tenue, #64748b)}.ab3d .vn-vista.es-actual .vn-vista-icono{color:currentColor}.ab3d .vn-vista.es-actual{border-color:var(--acento, #db2777);background:color-mix(in srgb,var(--acento, #db2777) 8%,transparent);font-weight:600}.ab3d .vn-vista:disabled{cursor:default;opacity:.75}.ab3d .vn-vista-nota{font-size:10px;color:var(--texto-tenue, #94a3b8)}.ab3d .levels-recuadro{display:flex;align-items:center;gap:6px;padding-left:22px;font-size:11px}.ab3d .levels-escala input{width:46px;font-variant-numeric:tabular-nums}.ab3d .levels-cortes{margin-top:8px;padding-top:6px;border-top:1px solid var(--borde, #e2e8f0)}.ab3d .levels-cortes-titulo{font-size:9px;letter-spacing:.06em;color:var(--texto-tenue, #94a3b8);margin-bottom:2px}.ab3d .levels-corte{display:block;width:100%;text-align:left;background:none;border:0;padding:2px 4px;cursor:pointer;color:inherit;font:inherit;font-size:11px;border-radius:3px}.ab3d .levels-corte.active{background:color-mix(in srgb,var(--acento, #db2777) 12%,transparent);font-weight:600}.ab3d .vn-marca{font-size:9px;font-weight:600;padding:1px 5px;border-radius:8px;background:color-mix(in srgb,#16a34a 15%,transparent);color:#16a34a}.ab3d .vn-marca.es-recuadro{background:color-mix(in srgb,#d4a017 20%,transparent);color:#8a6a0a}.ab3d .pane-2d-cuerpo{position:absolute;inset:0;display:flex;min-width:0;min-height:0}.ab3d .pane-2d-cuerpo>.editor2d-container{flex:1 1 0;min-width:0}.ab3d .panel-sin-editar{border:0;margin:0;padding:0;min-width:0}.indicador-modo-mando{pointer-events:auto;display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;padding:0;margin:0;font:inherit;color:inherit;letter-spacing:inherit;cursor:pointer}.indicador-modo-vistas{position:absolute;bottom:calc(100% + 6px);left:0;z-index:30;pointer-events:auto;display:flex;flex-direction:column;gap:2px;padding:4px;border-radius:10px;background:var(--card, #ffffff);border:1px solid var(--border, #e2e8f0);box-shadow:0 2px 10px #0000002e;min-width:190px}.indicador-modo-vista{display:flex;align-items:center;gap:8px;width:100%;padding:6px 8px;border:0;border-radius:7px;background:transparent;font-size:12px;font-weight:600;color:inherit;cursor:pointer;text-align:left}.indicador-modo-vista:hover{background:var(--hover, #f1f5f9)}.indicador-modo-vista.es-actual{background:var(--hover, #f1f5f9);outline:1px solid var(--border, #e2e8f0)}.indicador-modo-vista-nombre{flex:1 1 auto}.indicador-modo-vista-nota{font-size:11px;font-weight:500;opacity:.65;white-space:nowrap}.ab3d .fila-de-estado{display:flex;align-items:center;gap:6px;margin:-4px 0 10px}.ab3d .fila-de-estado .lock-hide-row{margin:0}.ab3d .chip-fase-wrap{position:relative;display:inline-flex}.ab3d .btn.chip-fase{font-size:11.5px;font-weight:600;height:26px;padding:0 10px;white-space:nowrap}.ab3d .chip-fase-menu{position:absolute;top:0;left:0;min-width:100%;z-index:30;display:flex;flex-direction:column;gap:2px;padding:2px;background:var(--background);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:0 6px 16px #0000002e}.ab3d .chip-fase-menu .btn{font-size:11.5px;font-weight:600;height:24px;padding:0 8px;text-align:left;white-space:nowrap}.ab3d .chip-fase-menu .btn[aria-selected=true]{box-shadow:inset 0 0 0 1.5px currentColor;border-color:currentColor}.ab3d .fila-forma{display:flex;align-items:center;gap:2px;margin-bottom:10px}.ab3d .grupo-iconos{display:inline-flex;gap:2px}.ab3d .fila-forma .btn-icon{width:26px;height:26px;padding:0;flex:0 0 auto}.ab3d .fila-de-campos{display:flex;gap:6px;align-items:stretch;margin-bottom:10px}.ab3d .fila-de-campos .side-readonly{display:flex;align-items:center;min-height:30px}.ab3d .fila-de-campos>*{flex:1 1 0;min-width:0;margin-bottom:0}.ab3d .fila-de-campos>*>label{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ab3d .fila-de-campos input[type=text],.ab3d .fila-de-campos input[type=number],.ab3d .fila-de-campos select{width:100%;min-width:0;text-align:right}.ab3d .titulo-plegable{display:flex;align-items:center;justify-content:space-between;width:100%;background:none;border:none;padding:0;margin:12px 0 8px;font:inherit;font-size:12px;font-weight:600;color:var(--foreground);cursor:pointer}.ab3d .field-group-compacta{padding:6px 12px}.ab3d .field-group-compacta .field-actions{margin-top:0}.ab3d .field-stack>select,.ab3d .field-stack>input[type=text],.ab3d .field-stack>input[type=number]{width:100%;min-width:0}._columna_1ds3i_19{display:flex;flex-direction:column;gap:2px}._columnaAcciones_1ds3i_19{flex:none;width:184px}.ab3d ._columnaAcciones_1ds3i_19>.btn,.ab3d ._columnaAcciones_1ds3i_19>.compartir-menu>.btn,.ab3d ._columnaAcciones_1ds3i_19>.bar-dropdown>.tipwrap>.btn{justify-content:flex-start;width:100%}.ab3d ._columnaAcciones_1ds3i_19>.bar-dropdown>.tipwrap{display:block}._columnaProyectos_1ds3i_19{min-width:242px;border-left:1px solid var(--border);padding-left:8px;max-height:60vh;overflow-y:auto}.ab3d ._columnaProyectos_1ds3i_19>.bar-dropdown-menu{position:static;min-width:0;padding:0;border:0;box-shadow:none;background:none}._filaCuenta_1ds3i_209{display:flex;align-items:center;gap:8px;padding:0 2px}._filaCuenta_1ds3i_209>span{flex:0 0 44px;font-size:12px;color:var(--muted-foreground);white-space:nowrap}._filaCuenta_1ds3i_209>select{flex:1;min-width:0}._anchoDeModo_1ds3i_287{width:140px;justify-content:center}._selectorProyectoFijo_1ds3i_311{width:226px;justify-content:flex-start}._nombreCuenta_1ds3i_333{display:inline-block;max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom}._espacioAlDivisor_1ds3i_398{--ancho-mandos: 366px;flex:0 1000 auto;width:max(0px,calc(100% - var(--ancho-mandos) - var(--x-divisor, 100%) / var(--escala-barra, 1)));margin-left:-4px;pointer-events:none}@layer theme,base,components,utilities;@layer theme{@theme default{ --font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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-50: oklch(97.1% .013 17.38); --color-red-100: oklch(93.6% .032 17.717); --color-red-200: oklch(88.5% .062 18.334); --color-red-300: oklch(80.8% .114 19.571); --color-red-400: oklch(70.4% .191 22.216); --color-red-500: oklch(63.7% .237 25.331); --color-red-600: oklch(57.7% .245 27.325); --color-red-700: oklch(50.5% .213 27.518); --color-red-800: oklch(44.4% .177 26.899); --color-red-900: oklch(39.6% .141 25.723); --color-red-950: oklch(25.8% .092 26.042); --color-orange-50: oklch(98% .016 73.684); --color-orange-100: oklch(95.4% .038 75.164); --color-orange-200: oklch(90.1% .076 70.697); --color-orange-300: oklch(83.7% .128 66.29); --color-orange-400: oklch(75% .183 55.934); --color-orange-500: oklch(70.5% .213 47.604); --color-orange-600: oklch(64.6% .222 41.116); --color-orange-700: oklch(55.3% .195 38.402); --color-orange-800: oklch(47% .157 37.304); --color-orange-900: oklch(40.8% .123 38.172); --color-orange-950: oklch(26.6% .079 36.259); --color-amber-50: oklch(98.7% .022 95.277); --color-amber-100: oklch(96.2% .059 95.617); --color-amber-200: oklch(92.4% .12 95.746); --color-amber-300: oklch(87.9% .169 91.605); --color-amber-400: oklch(82.8% .189 84.429); --color-amber-500: oklch(76.9% .188 70.08); --color-amber-600: oklch(66.6% .179 58.318); --color-amber-700: oklch(55.5% .163 48.998); --color-amber-800: oklch(47.3% .137 46.201); --color-amber-900: oklch(41.4% .112 45.904); --color-amber-950: oklch(27.9% .077 45.635); --color-yellow-50: oklch(98.7% .026 102.212); --color-yellow-100: oklch(97.3% .071 103.193); --color-yellow-200: oklch(94.5% .129 101.54); --color-yellow-300: oklch(90.5% .182 98.111); --color-yellow-400: oklch(85.2% .199 91.936); --color-yellow-500: oklch(79.5% .184 86.047); --color-yellow-600: oklch(68.1% .162 75.834); --color-yellow-700: oklch(55.4% .135 66.442); --color-yellow-800: oklch(47.6% .114 61.907); --color-yellow-900: oklch(42.1% .095 57.708); --color-yellow-950: oklch(28.6% .066 53.813); --color-lime-50: oklch(98.6% .031 120.757); --color-lime-100: oklch(96.7% .067 122.328); --color-lime-200: oklch(93.8% .127 124.321); --color-lime-300: oklch(89.7% .196 126.665); --color-lime-400: oklch(84.1% .238 128.85); --color-lime-500: oklch(76.8% .233 130.85); --color-lime-600: oklch(64.8% .2 131.684); --color-lime-700: oklch(53.2% .157 131.589); --color-lime-800: oklch(45.3% .124 130.933); --color-lime-900: oklch(40.5% .101 131.063); --color-lime-950: oklch(27.4% .072 132.109); --color-green-50: oklch(98.2% .018 155.826); --color-green-100: oklch(96.2% .044 156.743); --color-green-200: oklch(92.5% .084 155.995); --color-green-300: oklch(87.1% .15 154.449); --color-green-400: oklch(79.2% .209 151.711); --color-green-500: oklch(72.3% .219 149.579); --color-green-600: oklch(62.7% .194 149.214); --color-green-700: oklch(52.7% .154 150.069); --color-green-800: oklch(44.8% .119 151.328); --color-green-900: oklch(39.3% .095 152.535); --color-green-950: oklch(26.6% .065 152.934); --color-emerald-50: oklch(97.9% .021 166.113); --color-emerald-100: oklch(95% .052 163.051); --color-emerald-200: oklch(90.5% .093 164.15); --color-emerald-300: oklch(84.5% .143 164.978); --color-emerald-400: oklch(76.5% .177 163.223); --color-emerald-500: oklch(69.6% .17 162.48); --color-emerald-600: oklch(59.6% .145 163.225); --color-emerald-700: oklch(50.8% .118 165.612); --color-emerald-800: oklch(43.2% .095 166.913); --color-emerald-900: oklch(37.8% .077 168.94); --color-emerald-950: oklch(26.2% .051 172.552); --color-teal-50: oklch(98.4% .014 180.72); --color-teal-100: oklch(95.3% .051 180.801); --color-teal-200: oklch(91% .096 180.426); --color-teal-300: oklch(85.5% .138 181.071); --color-teal-400: oklch(77.7% .152 181.912); --color-teal-500: oklch(70.4% .14 182.503); --color-teal-600: oklch(60% .118 184.704); --color-teal-700: oklch(51.1% .096 186.391); --color-teal-800: oklch(43.7% .078 188.216); --color-teal-900: oklch(38.6% .063 188.416); --color-teal-950: oklch(27.7% .046 192.524); --color-cyan-50: oklch(98.4% .019 200.873); --color-cyan-100: oklch(95.6% .045 203.388); --color-cyan-200: oklch(91.7% .08 205.041); --color-cyan-300: oklch(86.5% .127 207.078); --color-cyan-400: oklch(78.9% .154 211.53); --color-cyan-500: oklch(71.5% .143 215.221); --color-cyan-600: oklch(60.9% .126 221.723); --color-cyan-700: oklch(52% .105 223.128); --color-cyan-800: oklch(45% .085 224.283); --color-cyan-900: oklch(39.8% .07 227.392); --color-cyan-950: oklch(30.2% .056 229.695); --color-sky-50: oklch(97.7% .013 236.62); --color-sky-100: oklch(95.1% .026 236.824); --color-sky-200: oklch(90.1% .058 230.902); --color-sky-300: oklch(82.8% .111 230.318); --color-sky-400: oklch(74.6% .16 232.661); --color-sky-500: oklch(68.5% .169 237.323); --color-sky-600: oklch(58.8% .158 241.966); --color-sky-700: oklch(50% .134 242.749); --color-sky-800: oklch(44.3% .11 240.79); --color-sky-900: oklch(39.1% .09 240.876); --color-sky-950: oklch(29.3% .066 243.157); --color-blue-50: oklch(97% .014 254.604); --color-blue-100: oklch(93.2% .032 255.585); --color-blue-200: oklch(88.2% .059 254.128); --color-blue-300: oklch(80.9% .105 251.813); --color-blue-400: oklch(70.7% .165 254.624); --color-blue-500: oklch(62.3% .214 259.815); --color-blue-600: oklch(54.6% .245 262.881); --color-blue-700: oklch(48.8% .243 264.376); --color-blue-800: oklch(42.4% .199 265.638); --color-blue-900: oklch(37.9% .146 265.522); --color-blue-950: oklch(28.2% .091 267.935); --color-indigo-50: oklch(96.2% .018 272.314); --color-indigo-100: oklch(93% .034 272.788); --color-indigo-200: oklch(87% .065 274.039); --color-indigo-300: oklch(78.5% .115 274.713); --color-indigo-400: oklch(67.3% .182 276.935); --color-indigo-500: oklch(58.5% .233 277.117); --color-indigo-600: oklch(51.1% .262 276.966); --color-indigo-700: oklch(45.7% .24 277.023); --color-indigo-800: oklch(39.8% .195 277.366); --color-indigo-900: oklch(35.9% .144 278.697); --color-indigo-950: oklch(25.7% .09 281.288); --color-violet-50: oklch(96.9% .016 293.756); --color-violet-100: oklch(94.3% .029 294.588); --color-violet-200: oklch(89.4% .057 293.283); --color-violet-300: oklch(81.1% .111 293.571); --color-violet-400: oklch(70.2% .183 293.541); --color-violet-500: oklch(60.6% .25 292.717); --color-violet-600: oklch(54.1% .281 293.009); --color-violet-700: oklch(49.1% .27 292.581); --color-violet-800: oklch(43.2% .232 292.759); --color-violet-900: oklch(38% .189 293.745); --color-violet-950: oklch(28.3% .141 291.089); --color-purple-50: oklch(97.7% .014 308.299); --color-purple-100: oklch(94.6% .033 307.174); --color-purple-200: oklch(90.2% .063 306.703); --color-purple-300: oklch(82.7% .119 306.383); --color-purple-400: oklch(71.4% .203 305.504); --color-purple-500: oklch(62.7% .265 303.9); --color-purple-600: oklch(55.8% .288 302.321); --color-purple-700: oklch(49.6% .265 301.924); --color-purple-800: oklch(43.8% .218 303.724); --color-purple-900: oklch(38.1% .176 304.987); --color-purple-950: oklch(29.1% .149 302.717); --color-fuchsia-50: oklch(97.7% .017 320.058); --color-fuchsia-100: oklch(95.2% .037 318.852); --color-fuchsia-200: oklch(90.3% .076 319.62); --color-fuchsia-300: oklch(83.3% .145 321.434); --color-fuchsia-400: oklch(74% .238 322.16); --color-fuchsia-500: oklch(66.7% .295 322.15); --color-fuchsia-600: oklch(59.1% .293 322.896); --color-fuchsia-700: oklch(51.8% .253 323.949); --color-fuchsia-800: oklch(45.2% .211 324.591); --color-fuchsia-900: oklch(40.1% .17 325.612); --color-fuchsia-950: oklch(29.3% .136 325.661); --color-pink-50: oklch(97.1% .014 343.198); --color-pink-100: oklch(94.8% .028 342.258); --color-pink-200: oklch(89.9% .061 343.231); --color-pink-300: oklch(82.3% .12 346.018); --color-pink-400: oklch(71.8% .202 349.761); --color-pink-500: oklch(65.6% .241 354.308); --color-pink-600: oklch(59.2% .249 .584); --color-pink-700: oklch(52.5% .223 3.958); --color-pink-800: oklch(45.9% .187 3.815); --color-pink-900: oklch(40.8% .153 2.432); --color-pink-950: oklch(28.4% .109 3.907); --color-rose-50: oklch(96.9% .015 12.422); --color-rose-100: oklch(94.1% .03 12.58); --color-rose-200: oklch(89.2% .058 10.001); --color-rose-300: oklch(81% .117 11.638); --color-rose-400: oklch(71.2% .194 13.428); --color-rose-500: oklch(64.5% .246 16.439); --color-rose-600: oklch(58.6% .253 17.585); --color-rose-700: oklch(51.4% .222 16.935); --color-rose-800: oklch(45.5% .188 13.697); --color-rose-900: oklch(41% .159 10.272); --color-rose-950: oklch(27.1% .105 12.094); --color-slate-50: oklch(98.4% .003 247.858); --color-slate-100: oklch(96.8% .007 247.896); --color-slate-200: oklch(92.9% .013 255.508); --color-slate-300: oklch(86.9% .022 252.894); --color-slate-400: oklch(70.4% .04 256.788); --color-slate-500: oklch(55.4% .046 257.417); --color-slate-600: oklch(44.6% .043 257.281); --color-slate-700: oklch(37.2% .044 257.287); --color-slate-800: oklch(27.9% .041 260.031); --color-slate-900: oklch(20.8% .042 265.755); --color-slate-950: oklch(12.9% .042 264.695); --color-gray-50: oklch(98.5% .002 247.839); --color-gray-100: oklch(96.7% .003 264.542); --color-gray-200: oklch(92.8% .006 264.531); --color-gray-300: oklch(87.2% .01 258.338); --color-gray-400: oklch(70.7% .022 261.325); --color-gray-500: oklch(55.1% .027 264.364); --color-gray-600: oklch(44.6% .03 256.802); --color-gray-700: oklch(37.3% .034 259.733); --color-gray-800: oklch(27.8% .033 256.848); --color-gray-900: oklch(21% .034 264.665); --color-gray-950: oklch(13% .028 261.692); --color-zinc-50: oklch(98.5% 0 none); --color-zinc-100: oklch(96.7% .001 286.375); --color-zinc-200: oklch(92% .004 286.32); --color-zinc-300: oklch(87.1% .006 286.286); --color-zinc-400: oklch(70.5% .015 286.067); --color-zinc-500: oklch(55.2% .016 285.938); --color-zinc-600: oklch(44.2% .017 285.786); --color-zinc-700: oklch(37% .013 285.805); --color-zinc-800: oklch(27.4% .006 286.033); --color-zinc-900: oklch(21% .006 285.885); --color-zinc-950: oklch(14.1% .005 285.823); --color-neutral-50: oklch(98.5% 0 none); --color-neutral-100: oklch(97% 0 none); --color-neutral-200: oklch(92.2% 0 none); --color-neutral-300: oklch(87% 0 none); --color-neutral-400: oklch(70.8% 0 none); --color-neutral-500: oklch(55.6% 0 none); --color-neutral-600: oklch(43.9% 0 none); --color-neutral-700: oklch(37.1% 0 none); --color-neutral-800: oklch(26.9% 0 none); --color-neutral-900: oklch(20.5% 0 none); --color-neutral-950: oklch(14.5% 0 none); --color-stone-50: oklch(98.5% .001 106.423); --color-stone-100: oklch(97% .001 106.424); --color-stone-200: oklch(92.3% .003 48.717); --color-stone-300: oklch(86.9% .005 56.366); --color-stone-400: oklch(70.9% .01 56.259); --color-stone-500: oklch(55.3% .013 58.071); --color-stone-600: oklch(44.4% .011 73.639); --color-stone-700: oklch(37.4% .01 67.558); --color-stone-800: oklch(26.8% .007 34.298); --color-stone-900: oklch(21.6% .006 56.043); --color-stone-950: oklch(14.7% .004 49.25); --color-mauve-50: oklch(98.5% 0 none); --color-mauve-100: oklch(96% .003 325.6); --color-mauve-200: oklch(92.2% .005 325.62); --color-mauve-300: oklch(86.5% .012 325.68); --color-mauve-400: oklch(71.1% .019 323.02); --color-mauve-500: oklch(54.2% .034 322.5); --color-mauve-600: oklch(43.5% .029 321.78); --color-mauve-700: oklch(36.4% .029 323.89); --color-mauve-800: oklch(26.3% .024 320.12); --color-mauve-900: oklch(21.2% .019 322.12); --color-mauve-950: oklch(14.5% .008 326); --color-olive-50: oklch(98.8% .003 106.5); --color-olive-100: oklch(96.6% .005 106.5); --color-olive-200: oklch(93% .007 106.5); --color-olive-300: oklch(88% .011 106.6); --color-olive-400: oklch(73.7% .021 106.9); --color-olive-500: oklch(58% .031 107.3); --color-olive-600: oklch(46.6% .025 107.3); --color-olive-700: oklch(39.4% .023 107.4); --color-olive-800: oklch(28.6% .016 107.4); --color-olive-900: oklch(22.8% .013 107.4); --color-olive-950: oklch(15.3% .006 107.1); --color-mist-50: oklch(98.7% .002 197.1); --color-mist-100: oklch(96.3% .002 197.1); --color-mist-200: oklch(92.5% .005 214.3); --color-mist-300: oklch(87.2% .007 219.6); --color-mist-400: oklch(72.3% .014 214.4); --color-mist-500: oklch(56% .021 213.5); --color-mist-600: oklch(45% .017 213.2); --color-mist-700: oklch(37.8% .015 216); --color-mist-800: oklch(27.5% .011 216.9); --color-mist-900: oklch(21.8% .008 223.9); --color-mist-950: oklch(14.8% .004 228.8); --color-taupe-50: oklch(98.6% .002 67.8); --color-taupe-100: oklch(96% .002 17.2); --color-taupe-200: oklch(92.2% .005 34.3); --color-taupe-300: oklch(86.8% .007 39.5); --color-taupe-400: oklch(71.4% .014 41.2); --color-taupe-500: oklch(54.7% .021 43.1); --color-taupe-600: oklch(43.8% .017 39.3); --color-taupe-700: oklch(36.7% .016 35.7); --color-taupe-800: oklch(26.8% .011 36.5); --color-taupe-900: oklch(21.4% .009 43.1); --color-taupe-950: oklch(14.7% .004 49.3); --color-black: #000; --color-white: #fff; --spacing: .25rem; --breakpoint-sm: 40rem; --breakpoint-md: 48rem; --breakpoint-lg: 64rem; --breakpoint-xl: 80rem; --breakpoint-2xl: 96rem; --container-3xs: 16rem; --container-2xs: 18rem; --container-xs: 20rem; --container-sm: 24rem; --container-md: 28rem; --container-lg: 32rem; --container-xl: 36rem; --container-2xl: 42rem; --container-3xl: 48rem; --container-4xl: 56rem; --container-5xl: 64rem; --container-6xl: 72rem; --container-7xl: 80rem; --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-base--line-height: 1.5 ; --text-lg: 1.125rem; --text-lg--line-height: calc(1.75 / 1.125); --text-xl: 1.25rem; --text-xl--line-height: calc(1.75 / 1.25); --text-2xl: 1.5rem; --text-2xl--line-height: calc(2 / 1.5); --text-3xl: 1.875rem; --text-3xl--line-height: 1.2 ; --text-4xl: 2.25rem; --text-4xl--line-height: calc(2.5 / 2.25); --text-5xl: 3rem; --text-5xl--line-height: 1; --text-6xl: 3.75rem; --text-6xl--line-height: 1; --text-7xl: 4.5rem; --text-7xl--line-height: 1; --text-8xl: 6rem; --text-8xl--line-height: 1; --text-9xl: 8rem; --text-9xl--line-height: 1; --font-weight-thin: 100; --font-weight-extralight: 200; --font-weight-light: 300; --font-weight-normal: 400; --font-weight-medium: 500; --font-weight-semibold: 600; --font-weight-bold: 700; --font-weight-extrabold: 800; --font-weight-black: 900; --tracking-tighter: -.05em; --tracking-tight: -.025em; --tracking-normal: 0em; --tracking-wide: .025em; --tracking-wider: .05em; --tracking-widest: .1em; --leading-tight: 1.25; --leading-snug: 1.375; --leading-normal: 1.5; --leading-relaxed: 1.625; --leading-loose: 2; --radius-xs: .125rem; --radius-sm: .25rem; --radius-md: .375rem; --radius-lg: .5rem; --radius-xl: .75rem; --radius-2xl: 1rem; --radius-3xl: 1.5rem; --radius-4xl: 2rem; --shadow-2xs: 0 1px rgb(0 0 0 / .05); --shadow-xs: 0 1px 2px 0 rgb(0 0 0 / .05); --shadow-sm: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1); --shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1); --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1); --shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1); --shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / .25); --inset-shadow-2xs: inset 0 1px rgb(0 0 0 / .05); --inset-shadow-xs: inset 0 1px 1px rgb(0 0 0 / .05); --inset-shadow-sm: inset 0 2px 4px rgb(0 0 0 / .05); --drop-shadow-xs: 0 1px 1px rgb(0 0 0 / .05); --drop-shadow-sm: 0 1px 2px rgb(0 0 0 / .15); --drop-shadow-md: 0 3px 3px rgb(0 0 0 / .12); --drop-shadow-lg: 0 4px 4px rgb(0 0 0 / .15); --drop-shadow-xl: 0 9px 7px rgb(0 0 0 / .1); --drop-shadow-2xl: 0 25px 25px rgb(0 0 0 / .15); --text-shadow-2xs: 0px 1px 0px rgb(0 0 0 / .15); --text-shadow-xs: 0px 1px 1px rgb(0 0 0 / .2); --text-shadow-sm: 0px 1px 0px rgb(0 0 0 / .075), 0px 1px 1px rgb(0 0 0 / .075), 0px 2px 2px rgb(0 0 0 / .075); --text-shadow-md: 0px 1px 1px rgb(0 0 0 / .1), 0px 1px 2px rgb(0 0 0 / .1), 0px 2px 4px rgb(0 0 0 / .1); --text-shadow-lg: 0px 1px 2px rgb(0 0 0 / .1), 0px 3px 2px rgb(0 0 0 / .1), 0px 4px 8px rgb(0 0 0 / .1); --ease-in: cubic-bezier(.4, 0, 1, 1); --ease-out: cubic-bezier(0, 0, .2, 1); --ease-in-out: cubic-bezier(.4, 0, .2, 1); --animate-spin: spin 1s linear infinite; --animate-ping: ping 1s cubic-bezier(0, 0, .2, 1) infinite; --animate-pulse: pulse 2s cubic-bezier(.4, 0, .6, 1) infinite; --animate-bounce: bounce 1s infinite; @keyframes spin { to { transform: rotate(360deg); } } @keyframes ping { 75%, 100% { transform: scale(2); opacity: 0; } } @keyframes pulse { 50% { opacity: .5; } } @keyframes bounce { 0%, 100% { transform: translateY(-25%); animation-timing-function: cubic-bezier(.8, 0, 1, 1); } 50% { transform: none; animation-timing-function: cubic-bezier(0, 0, .2, 1); } } --blur-xs: 4px; --blur-sm: 8px; --blur-md: 12px; --blur-lg: 16px; --blur-xl: 24px; --blur-2xl: 40px; --blur-3xl: 64px; --perspective-dramatic: 100px; --perspective-near: 300px; --perspective-normal: 500px; --perspective-midrange: 800px; --perspective-distant: 1200px; --aspect-video: 16 / 9; --default-transition-duration: .15s; --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1); --default-font-family: --theme(--font-sans, initial); --default-font-feature-settings: --theme( --font-sans--font-feature-settings, initial ); --default-font-variation-settings: --theme( --font-sans--font-variation-settings, initial ); --default-mono-font-family: --theme(--font-mono, initial); --default-mono-font-feature-settings: --theme( --font-mono--font-feature-settings, initial ); --default-mono-font-variation-settings: --theme( --font-mono--font-variation-settings, initial ); }@theme default inline reference{ --blur: 8px; --shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1); --shadow-inner: inset 0 2px 4px 0 rgb(0 0 0 / .05); --drop-shadow: 0 1px 2px rgb(0 0 0 / .1), 0 1px 1px rgb(0 0 0 / .06); --radius: .25rem; --max-width-prose: 65ch; }}@layer base{*,:after,:before,::backdrop,::file-selector-button{box-sizing:border-box;margin:0;padding:0;border:0 solid}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;tab-size:4;font-family:--theme(--default-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:--theme(--default-font-feature-settings,normal);font-variation-settings:--theme(--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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:--theme(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:--theme(--default-mono-font-feature-settings,normal);font-variation-settings:--theme(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea,::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;border-radius:0;background-color:transparent;opacity:1}: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: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,::-webkit-datetime-edit-year-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-millisecond-field,::-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]),::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer utilities{@tailwind utilities;}:root,:root[data-theme=cad]{--background:#FAF8F6;--foreground:#2E2E2E;--card:#FFFFFF;--card-foreground:#2E2E2E;--primary:#2E2E2E;--primary-foreground:#FFFFFF;--destructive:#D32F2F;--destructive-foreground:#FFFFFF;--border:#2E2E2E;--border-thickness:1px;--radius:0px;--shadow-hard:none;--bg-texture:none;--font-primary:"JetBrains Mono", "Fira Code", "Courier New", ui-monospace, monospace;--font-heading:"JetBrains Mono", "Fira Code", "Courier New", ui-monospace, monospace;--muted:#E8E6E1;--muted-foreground:#6f6c66;--success:#15803d;--warning:#B8860B;--accent:#E8E6E1;--accent-foreground:#2E2E2E;--tab-bg:#EFEFEF;--tab-hover:#E2E2E2;--bar:#242424;--bar-foreground:#F4F4F4;--bar-accent:#1A1A1A;--bar-border:#5A5A5A;--bar-muted:#B5B5B5}:root[data-theme=washi]{--background:#FCFAF5;--foreground:#2C2C2C;--card:#FFFFFF;--card-foreground:#2C2C2C;--primary:#2C2C2C;--primary-foreground:#FFFFFF;--destructive:#D64035;--destructive-foreground:#FFFFFF;--border:#E5E5E5;--border-thickness:1px;--radius:6px;--shadow-hard:0 4px 12px rgba(44,44,44,.06);--bg-texture:radial-gradient(#d6403511 1px, transparent 1px);--font-primary:"Inter", system-ui, sans-serif;--font-heading:"Lora", Georgia, serif;--muted:#F2EFE9;--muted-foreground:#8a857c;--success:#2e7d32;--warning:#B8860B;--accent:#EFE9DF;--accent-foreground:#2C2C2C;--tab-bg:#efece6;--tab-hover:#e4e0d8;--bar:#2C2C2C;--bar-foreground:#FFFFFF;--bar-accent:#222222;--bar-border:#454545;--bar-muted:#cfcfcf}:root[data-theme=matrix]{--background:#1E1E1E;--foreground:#D4D4D4;--card:#252526;--card-foreground:#D4D4D4;--primary:#569CD6;--primary-foreground:#FFFFFF;--destructive:#F44747;--destructive-foreground:#FFFFFF;--border:#333333;--border-thickness:1.5px;--radius:4px;--shadow-hard:0 4px 6px rgba(0,0,0,.3);--bg-texture:none;--font-primary:"JetBrains Mono", ui-monospace, monospace;--font-heading:"JetBrains Mono", ui-monospace, monospace;--muted:#2D2D30;--muted-foreground:#858585;--success:#4EC9B0;--warning:#D9A62E;--accent:#DCDCAA;--accent-foreground:#1E1E1E;--tab-bg:#2D2D30;--tab-hover:#37373D;--bar:#007ACC;--bar-foreground:#FFFFFF;--bar-accent:#0E639C;--bar-border:#1177BB;--bar-muted:#CFE8FA}:root{--bg-body: var(--background);--bg-paper: var(--card);--bg-grey: var(--muted);--text-primary: var(--foreground);--accent-red: var(--destructive);--border-color: var(--border);--hover-bg: color-mix(in srgb, var(--destructive) 8%, transparent)}:root{--ws-inset:10px;--ws-pad:12px;--ws-rail:70px;--ws-block-w:340px;--ws-frame-h:146px;--ws-head-h:100px;--ws-overlay:rgba(0,0,0,.5);--ws-frame-corner:var(--muted);--ws-block-bg:color-mix(in srgb, var(--bar) 88%, var(--bar-foreground))}:root[data-theme=matrix]{--ws-frame-corner:#000}.free-text-section{padding:10px 0;max-width:1000px;text-align:left}.page-main-title{font-size:2.4rem;font-weight:700;text-transform:uppercase;letter-spacing:-1px;margin-bottom:6px;line-height:1;color:var(--foreground);font-family:var(--font-heading)}.page-intro{font-size:.9rem;opacity:.8;max-width:760px}.tech-quote{border-left:3px solid var(--foreground);padding-left:12px;margin-bottom:12px;font-style:italic;font-size:.74rem;opacity:.7}@keyframes techPulse{0%,to{opacity:1}50%{opacity:.25}}.tech-pulse{animation:techPulse 1.4s ease-in-out infinite;display:inline-block}.technical-btn{padding:5px 11px;border:var(--border-thickness) solid var(--border);background:var(--primary);color:var(--primary-foreground);font-weight:700;text-transform:uppercase;cursor:pointer;font-size:.72rem;display:inline-flex;align-items:center;justify-content:center;gap:5px;border-radius:var(--radius);transition:all .12s;font-family:inherit}.technical-btn:hover{background:var(--destructive);border-color:var(--destructive);color:var(--destructive-foreground)}.technical-btn:disabled{opacity:.45;cursor:not-allowed}.technical-btn.secondary{background:var(--accent);color:var(--accent-foreground)}.technical-btn.secondary:hover{background:var(--primary);color:var(--primary-foreground);border-color:var(--primary)}.btn-tech-gray{background:var(--muted);color:var(--foreground);border:var(--border-thickness) solid var(--border);font-weight:700;text-transform:uppercase;cursor:pointer;padding:4px 12px;font-size:10px;transition:all .15s;border-radius:var(--radius)}.btn-tech-gray:hover{background:var(--primary);color:var(--primary-foreground)}.tool-panel{border:var(--border-thickness) solid var(--border);background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow-hard)}.module-header{min-height:34px;padding:0 12px;border-bottom:var(--border-thickness) solid var(--border);background:var(--muted);color:var(--card-foreground);font-weight:700;text-transform:uppercase;display:flex;align-items:center;justify-content:space-between;font-size:.74rem;text-align:left}.panel-content{padding:13px;text-align:left}.tech-input-group{display:flex;flex-direction:column;margin-bottom:9px;text-align:left}.tech-input-group label{font-size:.66rem;font-weight:700;margin-bottom:3px;text-transform:uppercase;opacity:.7}.tech-input,.tech-select{background:var(--card);border:var(--border-thickness) solid var(--border);color:var(--foreground);padding:6px 9px;font-size:.78rem;width:100%;border-radius:var(--radius);font-family:inherit}.tech-input[type=number],.tool-panel input[type=number],.panel-content input[type=number]{text-align:right}.tech-input:focus,.tech-select:focus{outline:none;border-color:var(--destructive)}.tool-panel input[type=range],.panel-content input[type=range]{-webkit-appearance:none;appearance:none;background:transparent;cursor:pointer}input[type=range]::-webkit-slider-runnable-track{background:var(--muted);border:var(--border-thickness) solid var(--border);height:10px}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;margin-top:-4px;background:var(--primary);border:var(--border-thickness) solid var(--border);height:16px;width:16px}input[type=range]::-moz-range-track{background:var(--muted);border:var(--border-thickness) solid var(--border);height:10px}input[type=range]::-moz-range-thumb{background:var(--primary);border:var(--border-thickness) solid var(--border);height:16px;width:16px;border-radius:0}.tech-table{width:100%;border-collapse:collapse;font-size:.82rem}.tech-table th,.tech-table td{border:var(--border-thickness) solid var(--border);padding:6px 9px;text-align:left}.tech-table th{background:var(--muted);text-transform:uppercase;font-weight:700}.tech-table tbody tr:hover{background:var(--hover-bg)}.counter-box{display:inline-flex;align-items:center;border:var(--border-thickness) solid var(--border);background:var(--card);height:28px}.counter-btn{width:28px;height:100%;background:none;border:none;font-weight:700;cursor:pointer;font-size:14px;color:var(--foreground)}.counter-btn:hover{background:var(--muted)}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}.ab-root{--washi: var(--background);--paper: var(--card);--grey: var(--muted);--sumi: var(--foreground);--red: var(--destructive);--bw: var(--border-thickness);font-family:var(--font-primary);background:var(--background);color:var(--foreground);background-image:var(--bg-texture);padding:22px 22px 330px;min-height:100vh;line-height:1.5;-webkit-font-smoothing:antialiased}@media(max-width:900px){.ab-root{padding-bottom:460px}}.ab-bottom-dock{position:fixed;left:0;right:0;bottom:0;z-index:50;display:flex;flex-direction:column;max-height:66vh}.ab-bottom-dock .ab-toptools-bar{position:static!important;margin:0!important;max-width:none!important}.ab-bottom-dock .ab-cfooter{margin:0;border-top:0}@media(max-width:560px){.ab-bottom-dock{overflow-y:auto}}.ab-root *{box-sizing:border-box;border-radius:var(--radius)}.ab-root button{font-family:inherit;cursor:pointer}.ab-root select,.ab-root input,.ab-root textarea{font-family:inherit}.ab-root a{color:inherit}.ab-container{width:100%;max-width:none;margin:0 auto;display:flex;flex-direction:column;gap:16px}@media(min-width:2200px){.ab-container{max-width:2160px}}.ab-masthead{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;padding-bottom:2px}.ab-masthead-text{text-align:right;margin-left:auto}.ab-logo-link{font-size:3.4rem;font-weight:800;letter-spacing:-1.5px;text-transform:none;color:var(--muted-foreground);text-decoration:none;display:inline-block;line-height:1;transition:color .15s;font-family:var(--font-heading)}.ab-logo-link:hover{color:var(--red)}.ab-masthead-sub{font-size:.72rem;font-weight:700;opacity:.65;text-transform:uppercase;margin-top:8px;letter-spacing:.04em}.ab-pulse{animation:abpulse 1.2s infinite ease-in-out;display:inline-block;color:var(--red)}@keyframes abpulse{0%,to{opacity:.15}50%{opacity:1}}.ab-masthead-logo{width:180px;height:120px;flex-shrink:0;opacity:.9;color:var(--foreground)}@media(max-width:760px){.ab-masthead-logo{display:none}.ab-logo-link{font-size:2.6rem}}.ab-hero-logo{height:27px;width:auto;object-fit:contain;display:inline-block;vertical-align:middle}.ab-hr{height:0;border-top:2px solid var(--border);margin:-2px 0 0}.ab-blink{animation:abblink 1.6s infinite ease-in-out;display:inline-block}@keyframes abblink{0%,to{opacity:.25}50%{opacity:1}}.ab-statusbar{display:flex;flex-wrap:wrap;align-items:center;gap:14px;justify-content:space-between;border:var(--bw) solid var(--sumi);background:var(--paper);padding:9px 14px;font-size:11px;box-shadow:var(--shadow-hard)}.ab-status-group{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.ab-path{font-weight:700;opacity:.8;white-space:nowrap}.ab-caret{color:var(--red);margin-right:6px;font-weight:800}.ab-divider{width:1px;height:22px;background:var(--sumi);opacity:.2}.ab-mini-label{font-size:9px;font-weight:800;opacity:.5;text-transform:uppercase;white-space:nowrap}.ab-select{border:var(--bw) solid var(--sumi);background:var(--washi);color:var(--sumi);padding:5px 26px 5px 10px;font-size:11px;font-weight:700;appearance:none;cursor:pointer}.ab-select:focus{outline:none;border-color:var(--red)}.ab-user{display:flex;align-items:center;gap:9px}.ab-username{font-size:11px;font-weight:700;text-transform:uppercase}.ab-badge{display:inline-flex;align-items:center;gap:4px;font-size:9px;font-weight:800;padding:3px 8px;border:var(--bw) solid var(--sumi);text-transform:uppercase;letter-spacing:.05em;transition:all .12s}.ab-badge.premium{background:var(--destructive);color:var(--destructive-foreground);border-color:var(--destructive)}.ab-badge.free{background:var(--muted);color:var(--foreground)}.ab-badge:hover{transform:translateY(-1px)}.ab-sysok{display:inline-flex;align-items:center;gap:5px;font-size:10px;font-weight:700;color:var(--success)}.ab-btn{padding:7px 13px;border:var(--bw) solid var(--sumi);background:var(--primary);color:var(--primary-foreground);font-weight:700;text-transform:uppercase;font-size:10px;display:inline-flex;align-items:center;gap:5px;transition:all .12s;white-space:nowrap}.ab-btn:hover{background:var(--destructive);border-color:var(--destructive);color:var(--destructive-foreground)}.ab-btn:active{transform:translateY(1px)}.ab-btn.sec{background:var(--accent);color:var(--accent-foreground)}.ab-btn.sec:hover{background:var(--primary);color:var(--primary-foreground)}.ab-btn.add{background:var(--accent);color:var(--accent-foreground)}.ab-btn.add:hover{background:var(--primary);color:var(--primary-foreground)}.ab-btn.add.added{background:var(--success);color:#fff;border-color:var(--success)}.ab-btn.add.added:hover{background:var(--destructive);border-color:var(--destructive)}.ab-btn.sm{padding:3px 8px;font-size:9px}.ab-workspace{display:grid;grid-template-columns:1fr 430px;gap:16px;align-items:start}@media(max-width:1080px){.ab-workspace{grid-template-columns:1fr}}.ab-binder-tabs{display:flex;flex-wrap:wrap-reverse;align-items:flex-end;gap:3px;position:relative;z-index:3}.ab-tab{border:var(--bw) solid var(--sumi);border-bottom:none;background:var(--tab-bg);color:var(--muted-foreground);padding:6px 10px;font-size:9.5px;font-weight:800;display:inline-flex;align-items:center;gap:5px;text-transform:uppercase;transition:all .12s;position:relative;top:2px;z-index:1}.ab-tab:hover{background:var(--tab-hover);color:var(--foreground)}.ab-tab.active{background:var(--card);color:var(--destructive);border-top:3px solid var(--destructive);top:0;padding-top:8px;padding-bottom:9px;margin-bottom:-2px;z-index:8}.ab-binder-body{position:relative;z-index:2;border:var(--bw) solid var(--sumi);background:var(--paper);min-height:470px;box-shadow:var(--shadow-hard)}.ab-binder-head{display:flex;justify-content:space-between;align-items:center;padding:11px 16px;border-bottom:var(--bw) solid var(--sumi);background:var(--muted);font-weight:800;text-transform:uppercase;font-size:13px}.ab-binder-head .ref{font-size:10px;opacity:.6;font-weight:700}.ab-ficha{display:grid;grid-template-columns:1.4fr 1fr}@media(max-width:680px){.ab-ficha{grid-template-columns:1fr}}.ab-ficha-main{padding:20px;border-right:var(--bw) solid var(--sumi)}.ab-photo{width:100%;height:230px;border:var(--bw) solid var(--sumi);background:var(--muted);display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative;margin-bottom:16px}.ab-photo img{width:100%;height:100%;object-fit:cover;filter:grayscale(85%) contrast(115%)}.ab-photo-tag{position:absolute;bottom:6px;left:6px;background:var(--primary);color:var(--primary-foreground);padding:3px 7px;font-size:9px;font-weight:700}.ab-ficha-side{padding:20px;background:color-mix(in srgb,var(--card) 80%,var(--background))}.ab-data-title{font-weight:800;border-bottom:1px solid var(--border);padding-bottom:6px;margin-bottom:10px;font-size:11px;text-transform:uppercase}.ab-data-row{display:flex;justify-content:space-between;gap:10px;border-bottom:1px dashed var(--border);padding:7px 0;font-size:12px}.ab-data-row:last-child{border-bottom:none}.ab-data-label{font-weight:700;opacity:.55;text-transform:uppercase;font-size:10px}.ab-data-value{font-weight:700;text-align:right}.ab-origin{font-size:8px;font-weight:800;color:var(--destructive);border:1px solid var(--destructive);padding:0 4px;margin-left:6px}.ab-linked{padding:20px}.ab-linked h3{font-size:12px;border-bottom:1px solid var(--border);padding-bottom:8px;margin-bottom:14px;text-transform:uppercase}.ab-linked-card{border:var(--bw) solid var(--sumi);margin-bottom:10px}.ab-linked-card-head{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:var(--muted);gap:8px}.ab-linked-card-title{display:flex;align-items:center;gap:8px;font-weight:700;font-size:12px}.ab-chip{background:var(--primary);color:var(--primary-foreground);padding:4px;display:inline-flex}.ab-linked-card-body{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;background:color-mix(in srgb,var(--card) 70%,var(--background));flex-wrap:wrap}.ab-check{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:700}.ab-check.done{color:var(--success)}.ab-empty{border:2px dashed var(--border);padding:30px;text-align:center;color:var(--muted-foreground);font-size:11px;text-transform:uppercase;font-weight:700;line-height:1.7}.ab-catalog{border:var(--bw) solid var(--sumi);background:var(--paper);display:flex;flex-direction:column;max-height:760px;box-shadow:var(--shadow-hard)}.ab-catalog-head{display:flex;justify-content:space-between;align-items:center;padding:11px 16px;background:var(--muted);border-bottom:var(--bw) solid var(--sumi);font-weight:800;text-transform:uppercase;font-size:13px}.ab-catalog-filter{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:var(--bw) solid var(--sumi);background:color-mix(in srgb,var(--card) 70%,var(--background))}.ab-catalog-scroll{overflow-y:auto;flex:1}.ab-folder{border-bottom:1px solid var(--border)}.ab-folder:last-child{border-bottom:none}.ab-folder-head{width:100%;text-align:left;background:none;border:none;color:var(--foreground);padding:11px 14px;font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:space-between;text-transform:uppercase;transition:background .12s}.ab-folder-head:hover{background:var(--hover-bg)}.ab-folder-body{background:color-mix(in srgb,var(--card) 70%,var(--background))}.ab-sub{border-top:1px solid var(--border)}.ab-sub-head{width:100%;text-align:left;background:none;border:none;padding:8px 14px 8px 20px;font-size:10px;font-weight:800;color:var(--muted-foreground);text-transform:uppercase;display:flex;align-items:center;justify-content:space-between;letter-spacing:.03em;transition:color .12s}.ab-sub-head:hover{color:var(--foreground)}.ab-sub-body{padding:6px 10px 10px 16px}.ab-tool{border:var(--bw) solid var(--sumi);background:var(--card);padding:9px 10px;margin-bottom:7px;transition:all .12s}.ab-tool:last-child{margin-bottom:0}.ab-tool.soon{opacity:.6;background:var(--muted)}.ab-tool.active{border-color:var(--destructive);outline:1px solid var(--destructive)}.ab-tool-row{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.ab-tool-title{display:flex;align-items:center;gap:7px;font-size:11px;font-weight:700;flex:1}.ab-tool-code{font-size:8px;font-weight:800;opacity:.4}.ab-tool-actions{display:flex;gap:4px;flex-wrap:wrap;justify-content:flex-end;align-items:center}.ab-pill{font-size:7.5px;font-weight:800;padding:1px 5px;border:1px solid var(--border);text-transform:uppercase;letter-spacing:.03em;display:inline-flex;align-items:center;gap:3px}.ab-pill.soon{background:var(--muted);color:var(--muted-foreground);border-color:var(--border)}.ab-pill.prem{background:var(--destructive);color:var(--destructive-foreground);border-color:var(--destructive)}.ab-datacode{display:inline;font-size:7.5px;line-height:1;font-weight:700;letter-spacing:.02em;white-space:nowrap;color:var(--destructive);opacity:.5;margin-left:4px;vertical-align:middle;pointer-events:none;-webkit-user-select:none;user-select:none}.ab-explore{margin-top:8px;background:var(--muted);border-left:3px solid var(--border);padding:8px 10px;font-size:10px}.ab-explore .lab{font-weight:800}.ab-phase-badges{display:flex;gap:5px;flex-wrap:wrap;margin-top:5px}.ab-phase{font-size:8px;padding:1px 4px;border:1px solid var(--border);color:var(--muted-foreground)}.ab-phase.on{border-color:var(--foreground);color:var(--foreground);font-weight:800}.ab-toolhost{border:var(--bw) solid var(--sumi);background:var(--paper);box-shadow:var(--shadow-hard)}.ab-module-header{display:flex;justify-content:space-between;align-items:center;padding:11px 16px;background:var(--muted);border-bottom:var(--bw) solid var(--sumi);font-weight:800;text-transform:uppercase;font-size:13px}.ab-toolhost-body{padding:30px;min-height:300px;display:flex;align-items:center;justify-content:center}.ab-toolhost-body.mounted{display:block;padding:24px}.ab-host-empty{text-align:center;color:var(--muted-foreground);font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.ab-render{width:100%;max-width:780px;border:2px solid var(--border);background:var(--background);padding:36px;text-align:center;box-shadow:var(--shadow-hard)}.ab-render.prem{border-color:var(--destructive)}.ab-render-icon{display:inline-flex;padding:18px;border:2px solid var(--border);background:var(--card);margin-bottom:18px}.ab-render-title{font-size:18px;font-weight:800;text-transform:uppercase;letter-spacing:-.5px}.ab-render-sub{font-size:11px;opacity:.6;font-weight:700;text-transform:uppercase;margin-top:6px}.ab-loadbar{margin:22px auto 0;width:62%;height:10px;border:var(--bw) solid var(--sumi);background:var(--muted);overflow:hidden}.ab-loadbar-fill{height:100%;background:var(--destructive)}.ab-loadtext{font-size:10px;font-weight:800;text-transform:uppercase;margin-top:10px;opacity:.7;display:inline-flex;align-items:center;gap:6px}.ab-cfooter{border:var(--bw) solid var(--sumi);background:var(--paper);box-shadow:var(--shadow-hard)}.ab-metagrid{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:var(--bw) solid var(--sumi)}@media(max-width:900px){.ab-metagrid{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.ab-metagrid{grid-template-columns:1fr}}.ab-meta{padding:10px 14px;border-right:var(--bw) solid var(--sumi);border-bottom:1px solid var(--border)}.ab-meta-label{font-size:9px;font-weight:800;opacity:.5;text-transform:uppercase;display:block}.ab-meta-value{font-size:11px;font-weight:700;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ab-feedback{display:flex;gap:10px;align-items:center;padding:14px 16px;border-bottom:var(--bw) solid var(--sumi);flex-wrap:wrap}.ab-feedback label{font-size:11px;font-weight:800;text-transform:uppercase;display:inline-flex;align-items:center;gap:6px}.ab-feedback input{flex:1;min-width:200px;border:var(--bw) solid var(--sumi);background:var(--card);color:var(--foreground);padding:8px 10px;font-size:11px}.ab-feedback input:focus{outline:none;border-color:var(--destructive)}.ab-legal{display:flex;gap:14px;align-items:center;justify-content:space-between;padding:10px 16px;flex-wrap:wrap;font-size:9px;opacity:.65;text-transform:uppercase;font-weight:700}.ab-legal a{text-decoration:underline}.ab-legal a:hover{color:var(--destructive)}.ab-toptools-bar{position:sticky;bottom:0;z-index:40;margin:6px auto 0;width:100%;max-width:none;border:var(--bw) solid var(--sumi);background:var(--bar);display:flex;flex-direction:column}@media(min-width:2200px){.ab-toptools-bar{max-width:2160px}}.ab-tt-active{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 18px;background:var(--bar-accent);border-bottom:var(--bw) solid var(--bar-border);flex-wrap:wrap}.ab-tt-active-label{font-size:10px;font-weight:800;text-transform:uppercase;color:var(--bar-muted);letter-spacing:.06em;display:inline-flex;align-items:center;gap:7px}.ab-tt-active-name{font-size:14px;font-weight:800;text-transform:uppercase;color:var(--bar-foreground);letter-spacing:-.3px;display:inline-flex;align-items:center;gap:9px}.ab-tt-row{display:flex}.ab-tt-row:not(:last-child){border-bottom:var(--bw) solid var(--bar-border)}.ab-tt{flex:1;min-width:120px;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px;color:var(--bar-foreground);font-size:10px;font-weight:800;text-transform:uppercase;border:none;border-right:var(--bw) solid var(--bar-border);background:none;transition:all .12s}.ab-tt:last-child{border-right:none}.ab-tt:hover{background:var(--destructive);color:var(--destructive-foreground)}.ab-tt:active{filter:brightness(.85)}.ab-tt-select{flex:1;display:flex;align-items:center;gap:8px;padding:8px 14px;min-width:220px}.ab-select-dark{flex:1;background:var(--card);color:var(--foreground)}.ab-progress{margin-top:16px;border:1.5px solid var(--border);padding:12px;background:color-mix(in srgb,var(--card) 80%,var(--background))}.ab-progress-head{display:flex;justify-content:space-between;align-items:center;font-size:10px;font-weight:800;text-transform:uppercase}.ab-progress-head span:first-child{display:inline-flex;align-items:center;gap:6px}.ab-progress-pct{color:var(--destructive)}.ab-progress-bar{height:12px;border:1.5px solid var(--border);background:var(--muted);margin:8px 0 12px}.ab-progress-fill{height:100%;background:var(--primary);transition:width .3s}.ab-progress-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.ab-chk{display:flex;flex-direction:column;align-items:center;gap:3px;text-align:center;font-size:7.5px;font-weight:700;text-transform:uppercase;opacity:.45;color:var(--foreground)}.ab-chk.on{opacity:1;color:var(--success)}.ab-toast{position:fixed;bottom:160px;left:50%;transform:translate(-50%);z-index:9999;background:var(--primary);color:var(--primary-foreground);border:2px solid var(--border);padding:11px 20px;font-size:11px;font-weight:800;text-transform:uppercase;display:flex;align-items:center;gap:10px;max-width:90%}.ab-toast .dot{color:var(--destructive)}:root,:root[data-theme=cad]{--progress-accent:#2E2E2E}:root[data-theme=washi]{--progress-accent:#2C2C2C}:root[data-theme=matrix]{--progress-accent:#4EC9B0}.ab-chk.on{color:var(--progress-accent)}.ab-progress-fill{background:var(--progress-accent)}.ab-progress-pct{color:var(--progress-accent)}.ab-tt-select{flex:0 0 300px;min-width:300px}.ab-tt-spacer{flex:1}.ab-theme-mini{display:inline-flex;align-items:center;gap:4px;font-size:9px;font-weight:800;padding:3px 8px;border:var(--bw) solid var(--sumi);text-transform:uppercase;letter-spacing:.05em;background:var(--accent);color:var(--accent-foreground);cursor:pointer;transition:all .12s}.ab-theme-mini:hover{background:var(--primary);color:var(--primary-foreground)}.ab-otros{border-top:var(--bw) solid var(--sumi);padding:16px 20px}.ab-otros-title{font-size:11px;font-weight:800;text-transform:uppercase;opacity:.7;margin-bottom:10px;display:flex;align-items:center;gap:7px}.ab-otros-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(185px,1fr));gap:10px}.ab-folder-card{position:relative;text-align:left;cursor:pointer;border:var(--bw) solid var(--sumi);background:var(--card);color:var(--foreground);padding:12px;display:flex;flex-direction:column;gap:6px;transition:all .12s;font-family:inherit}.ab-folder-card:hover{background:var(--muted);transform:translateY(-2px)}.ab-folder-card .fc-top{display:flex;align-items:center;justify-content:space-between}.ab-folder-card .fc-name{font-size:12px;font-weight:800;text-transform:uppercase;line-height:1.25}.ab-folder-card .fc-meta{display:flex;gap:6px;flex-wrap:wrap}.ab-folder-card .fc-badge{font-size:8px;font-weight:800;text-transform:uppercase;padding:1px 5px;border:1px solid var(--border);background:var(--muted);color:var(--foreground)}.ab-folder-card .fc-ref{font-size:8px;opacity:.45;font-weight:700}.ab-folder-card.new{align-items:center;justify-content:center;text-align:center;border-style:dashed;color:var(--muted-foreground);font-weight:800;text-transform:uppercase;font-size:11px;gap:8px;min-height:96px}.ab-folder-card.new:hover{color:var(--destructive);border-color:var(--destructive)}.ab-home{display:flex;flex-direction:column;gap:18px}.ab-home-toptools{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:var(--muted);border:var(--bw) solid var(--sumi);padding:12px 16px;box-shadow:var(--shadow-hard)}.ab-home-tt-label{font-size:10px;font-weight:800;text-transform:uppercase;opacity:.55;letter-spacing:.06em;margin-right:6px;display:inline-flex;align-items:center;gap:6px}.ab-home-tt{display:inline-flex;align-items:center;gap:7px;font-size:11px;font-weight:800;text-transform:uppercase;padding:8px 14px;border:var(--bw) solid var(--sumi);background:var(--card);color:var(--foreground);cursor:pointer;transition:all .12s;font-family:inherit}.ab-home-tt:hover{background:var(--primary);color:var(--primary-foreground)}.ab-home-section{border:var(--bw) solid var(--sumi);background:var(--paper);box-shadow:var(--shadow-hard)}.ab-home-section-head{display:flex;justify-content:space-between;align-items:center;padding:11px 16px;background:var(--muted);border-bottom:var(--bw) solid var(--sumi);font-weight:800;text-transform:uppercase;font-size:13px}.ab-home-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(225px,1fr));gap:14px;padding:18px}.ab-home-empty{padding:48px 30px;text-align:center}.ab-home-empty h3{font-size:18px;font-weight:800;text-transform:uppercase;margin-bottom:8px}.ab-home-empty p{font-size:12px;opacity:.7;margin-bottom:18px}.ab-home-empty-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}:root[data-theme=washi]{--background:#F6EFDD;--foreground:#34302A;--card:#FFFCF3;--card-foreground:#34302A;--primary:#34302A;--primary-foreground:#FFFCF3;--destructive:#C24A33;--destructive-foreground:#FFFFFF;--border:#DCCFB3;--muted:#EBDEC2;--muted-foreground:#8a7c5e;--success:#4d7c2f;--warning:#A87B0B;--accent:#EFE4C9;--accent-foreground:#34302A;--tab-bg:#E2D3AF;--tab-hover:#D8C89E;--progress-accent:#34302A;--bar:#34302A;--bar-foreground:#FFFCF3;--bar-accent:#2a2620;--bar-border:#5b5443;--bar-muted:#cdbf9f;--bg-texture:radial-gradient(#c24a3314 1px, transparent 1px)}:root[data-theme=matrix]{--font-primary:"Fira Code", "JetBrains Mono", ui-monospace, monospace;--font-heading:"Fira Code", "JetBrains Mono", ui-monospace, monospace;--bar:#D4D4D4;--bar-foreground:#1E1E1E;--bar-accent:#C4C4C4;--bar-border:#9D9D9D;--bar-muted:#4A4A4A}:root[data-theme=matrix]{--primary:#178C7C;--primary-foreground:#FFFFFF}.ab-toolhost-body input:not([type=range]):not([type=checkbox]):not([type=radio]),.ab-toolhost-body select,.ab-toolhost-body textarea{background-color:var(--card);color:var(--foreground)}.bg-background{background-color:var(--background)}.bg-card{background-color:var(--card)}.bg-primary{background-color:var(--primary)}.bg-destructive{background-color:var(--destructive)}.bg-muted{background-color:var(--muted)}.bg-accent{background-color:var(--accent)}.text-foreground{color:var(--foreground)}.text-card-foreground{color:var(--card-foreground)}.text-primary{color:var(--primary)}.text-primary-foreground{color:var(--primary-foreground)}.text-destructive{color:var(--destructive)}.text-destructive-foreground{color:var(--destructive-foreground)}.text-muted-foreground{color:var(--muted-foreground)}.text-accent-foreground{color:var(--accent-foreground)}.border-border{border-color:var(--border)}.border-primary{border-color:var(--primary)}.border-destructive{border-color:var(--destructive)}.border-theme{border:var(--border-thickness) solid var(--border)}.rounded-theme{border-radius:var(--radius)}.shadow-hard{box-shadow:var(--shadow-hard)}:root[data-theme=white]{--background:#F7F7F7;--foreground:#232323;--card:#FFFFFF;--card-foreground:#232323;--primary:#2E2E2E;--primary-foreground:#FAFAFA;--destructive:#DC2626;--destructive-foreground:#FFFFFF;--border:#E4E4E4;--border-thickness:1px;--radius:8px;--shadow-hard:0 1px 2px rgba(0,0,0,.04), 0 1px 3px rgba(0,0,0,.06);--bg-texture:none;--font-primary:"Inter", system-ui, -apple-system, sans-serif;--font-heading:"Inter", system-ui, -apple-system, sans-serif;--muted:#F4F4F4;--muted-foreground:#737373;--success:#16A34A;--warning:#CA8A04;--accent:#F4F4F4;--accent-foreground:#2E2E2E;--tab-bg:#ECECEC;--tab-hover:#E2E2E2;--bar:#262626;--bar-foreground:#FAFAFA;--bar-accent:#171717;--bar-border:#3F3F3F;--bar-muted:#A3A3A3}:root[data-theme=white]{--progress-accent: #DC2626}@keyframes ab-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.tool-panel,.ab-binder-body,.ab-catalog,.ab-home-section,.ab-home-toptools,.ab-render,.ab-linked-card,.ab-statusbar,.ab-toptools-bar,.ab-hero,.ab-photo,.ab-repo-card{border-radius:0!important}.ab-tab,.module-header,.ab-catalog-head,.ab-binder-head,.ab-module-header,.ab-home-section-head{position:relative;border-radius:0!important}:root[data-theme=cad] .ab-tab:after,:root[data-theme=cad] .module-header:after,:root[data-theme=cad] .ab-catalog-head:after,:root[data-theme=cad] .ab-binder-head:after,:root[data-theme=cad] .ab-module-header:after,:root[data-theme=cad] .ab-home-section-head:after{content:"";position:absolute;top:0;right:0;width:16px;height:16px;border-radius:0!important;transform:translate(50%,-50%) rotate(45deg);transform-origin:center;background:var(--background);border-bottom:var(--bw) solid var(--border);pointer-events:none;z-index:3}:root[data-theme=cad] .ab-tab:after{width:12px;height:12px}.ab-container--narrow{max-width:1280px;margin-left:auto;margin-right:auto}.ab-form-grid{display:grid;grid-template-columns:1fr;gap:16px;align-items:end}@media(min-width:768px){.ab-form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:1280px){.ab-form-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.ab-form-grid .tech-input-group{margin-bottom:0;min-width:0}.ab-form-grid .tech-input,.ab-form-grid .tech-select,.ab-form-grid textarea{width:100%}.ab-form-grid .col-span-full{grid-column:1 / -1}.ab-home{max-width:none;width:100%}.ab-hero{border:none;background:none;box-shadow:none;padding:40px 4px 28px;text-align:left}.ab-hero-badge{display:inline-flex;align-items:center;gap:6px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;margin-bottom:18px;opacity:.7}.ab-hero-title{font-size:clamp(1.4rem,2.4vw,2.2rem);font-weight:800;line-height:1.2;letter-spacing:-.5px;max-width:880px;margin:0 0 22px;font-family:var(--font-heading)}.ab-hero-actions{display:flex;gap:12px;flex-wrap:wrap}.ab-photo-tools{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:10px}.ab-photo-tools-label{font-size:9px;font-weight:800;text-transform:uppercase;opacity:.5;margin-left:4px}.ab-repo-banner{display:flex;align-items:center;gap:10px;border:1.5px dashed var(--border);background:var(--muted);padding:12px 14px;font-size:12px;font-weight:600;margin-bottom:16px}.ab-repo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px}.ab-repo-card{border:var(--bw) solid var(--sumi);background:var(--card);padding:14px;display:flex;flex-direction:column;gap:10px;opacity:.85}.ab-repo-card-top{display:flex;align-items:center;justify-content:space-between}.ab-repo-card-name{font-size:12px;font-weight:800;text-transform:uppercase;line-height:1.25}.ab-split{display:flex;flex-direction:column;gap:24px;align-items:stretch}.tool-split-21{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}.tool-split-21>*{min-width:0}@media(max-width:860px){.tool-split-21{grid-template-columns:1fr}}.ab-split-left{width:100%;min-width:0}.ab-split-right{position:relative;width:100%;min-width:0}.ab-preview-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px}.ab-preview-title{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;opacity:.7;display:inline-flex;align-items:center;gap:7px;margin:0}.ab-modal-overlay{position:fixed;inset:0;z-index:120;background:#00000073;display:flex;align-items:center;justify-content:center;padding:20px}.ab-modal{width:100%;max-width:440px;background:var(--card);box-shadow:var(--shadow-hard)}.ab-menu-backdrop{position:fixed;inset:0;z-index:90}.ab-user-menu{position:absolute;top:calc(100% + 8px);right:0;z-index:100;min-width:230px;background:var(--card);border:var(--bw) solid var(--sumi);box-shadow:var(--shadow-hard);display:flex;flex-direction:column}.ab-user-menu-head{padding:12px 14px;border-bottom:var(--bw) solid var(--border);display:flex;flex-direction:column;align-items:flex-start}.ab-menu-item{display:flex;align-items:center;gap:9px;padding:10px 14px;font-size:11px;font-weight:700;text-transform:uppercase;background:none;border:none;border-bottom:1px solid var(--border);color:var(--foreground);text-align:left;transition:all .12s}.ab-menu-item:last-child{border-bottom:none}.ab-menu-item:hover{background:var(--muted)}.ab-menu-item.danger{color:var(--destructive)}.ab-menu-item.danger:hover{background:var(--destructive);color:var(--destructive-foreground)}.doc-export{display:block;width:100%}@media print{@page{size:A4 portrait;margin:12mm}html,body{background:#fff!important}.ab-root{padding:0!important;background:#fff!important}body *{visibility:hidden!important}.ab-split-left,.ab-preview-head{display:none!important}.doc-export,.doc-export *{visibility:visible!important}.ab-split,.ab-split-right{display:block!important;position:static!important}.doc-export{position:absolute;left:0;top:0;width:100%!important}.doc-sheet{background:#fff!important;border:1px solid #000!important;box-shadow:none!important}.exp-toolbar{display:none!important}.exp-print,.exp-print *{visibility:visible!important}.exp-print{position:absolute;left:0;top:0;width:100%!important;background:#fff!important;border:none!important;padding:0!important}.exp-sec,.exp-indice,.exp-firma,.exp-form-page{page-break-before:always;break-before:page}.exp-sec thead{display:table-header-group}.exp-sec tfoot{display:table-footer-group}.exp-portada{min-height:auto!important;height:250mm}.exp-firma{min-height:auto!important;height:230mm}.exp-form-page{box-shadow:none!important}}:root[data-theme=cad] *,:root[data-theme=cad] *:before,:root[data-theme=cad] *:after{box-shadow:none!important;text-shadow:none!important}:root[data-theme=cad] .shadow-hard,:root[data-theme=cad] .tool-panel,:root[data-theme=cad] .ab-toptools-bar,:root[data-theme=cad] .ab-statusbar{box-shadow:none!important}:root[data-theme=cad],:root[data-theme=cad] *{font-family:JetBrains Mono,Fira Code,Courier New,ui-monospace,monospace!important}:root[data-theme=cad] .ab-render,:root[data-theme=cad] .ab-render-icon,:root[data-theme=cad] .ab-empty,:root[data-theme=cad] .ab-toast,:root[data-theme=cad] .ab-progress,:root[data-theme=cad] .ab-progress-bar,:root[data-theme=cad] .ab-repo-banner{border-width:1px!important}:root[data-theme=cad] .ab-hr{border-top-width:1px}:root[data-theme=cad] .ab-btn{background:var(--foreground)!important;color:var(--background)!important;border:1px solid var(--foreground)!important;font-weight:700}:root[data-theme=cad] .ab-btn:before{content:"[ "}:root[data-theme=cad] .ab-btn:after{content:" ]"}:root[data-theme=cad] .ab-btn:hover{background:var(--destructive)!important;color:#fff!important;border-color:var(--destructive)!important}:root[data-theme=cad] .ab-btn.sec,:root[data-theme=cad] .ab-btn.add:not(.added){background:transparent!important;color:var(--foreground)!important}:root[data-theme=cad] .ab-btn.sec:hover,:root[data-theme=cad] .ab-btn.add:not(.added):hover{background:var(--foreground)!important;color:var(--background)!important}:root[data-theme=cad] .ab-btn.add.added{background:var(--success)!important;color:#fff!important;border-color:var(--success)!important}:root[data-theme=cad] .technical-btn{background:var(--foreground)!important;color:var(--background)!important;border:1px solid var(--foreground)!important}:root[data-theme=cad] .technical-btn:hover{background:var(--destructive)!important;color:#fff!important;border-color:var(--destructive)!important}:root[data-theme=cad] .technical-btn.secondary,:root[data-theme=cad] .btn-tech-gray{background:transparent!important;color:var(--foreground)!important;border:1px solid var(--foreground)!important}:root[data-theme=cad] .technical-btn.secondary:hover,:root[data-theme=cad] .btn-tech-gray:hover{background:var(--foreground)!important;color:var(--background)!important}:root[data-theme=cad] .ab-toptools-bar{background:var(--bar)!important}:root[data-theme=cad] .ab-tt:hover{background:var(--destructive)!important;color:#fff!important}:root[data-theme=cad] svg{stroke-width:1px}.doc-export,.doc-export *,:root[data-theme] .doc-export,:root[data-theme] .doc-export *,:root[data-theme=cad] .doc-export,:root[data-theme=cad] .doc-export *{font-family:var(--doc-fuente, Arial, "Helvetica Neue", Helvetica, "Segoe UI", sans-serif)!important;border-radius:0!important;box-shadow:none!important;text-shadow:none!important;letter-spacing:normal!important}:root .doc-export .doc-sheet,:root[data-theme] .doc-export .doc-sheet{background:#fff!important;color:#1a1a1a!important;border:0!important;box-shadow:none!important}.ab-root.ab-shell{padding:0!important;min-height:100vh;display:flex;flex-direction:column}.ab-root.ab-shell .ab-toast{bottom:24px}.ab-outlet{flex:1;min-height:0;display:flex;flex-direction:column}.ab-outlet--mini{width:100%;max-width:1280px;margin:0 auto;padding:22px}.ab-top,.ab-topbar,.ab-brand,.ab-topbtn,.ab-topsel,.ab-dock,.ab-dock-tools,.ab-dock-tools .lbl,.ab-dock-nav,.ab-dock-last,.ab-dock-btn,.ab-workbar,.ab-workbar-btn{border-radius:0!important}.ab-top{display:flex;align-items:stretch;gap:12px;background:var(--bar);color:var(--bar-foreground);border-bottom:var(--bw) solid var(--bar-border)}.ab-topbar{flex:1;display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;padding:40px 14px 12px}.ab-prodswitch{position:absolute;top:3px;left:496px;display:flex;gap:6px;z-index:6}.ab-top-tagline{flex:0 0 100%;order:-1;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;opacity:.6;line-height:1.25;margin:0 0 2px}.ab-top-slogan{margin-top:3px}.ab-brand{display:flex;flex-direction:column;align-items:flex-end;justify-content:flex-end;gap:2px;padding:4px 27px 8px 0;text-align:right;flex:0 0 auto}.ab-brand-title{font-family:var(--font-heading);font-size:3.5rem;font-weight:800;letter-spacing:.16em;line-height:1;color:var(--bar-foreground);cursor:pointer;padding-left:.16em}.ab-brand-title .pulse,.ab-brand-title .pro{color:var(--destructive)}.ab-brand-iso{align-self:flex-end;width:120px;height:120px;margin-right:70px;color:var(--bar-foreground);flex:0 0 auto}.ab-brand-text{display:flex;flex-direction:column;align-items:flex-end;justify-content:flex-end;padding-bottom:6px}.ab-brand-sub{font-size:.78rem;font-weight:700;opacity:.6;text-transform:uppercase;margin-top:5px;letter-spacing:.04em;max-width:560px}.ab-brand-sub-row{display:flex;gap:26px;justify-content:space-between;align-items:center;max-width:none;width:100%;text-align:left}.ab-brand-sub-row>span{flex:1 1 0;min-width:0}.ab-brand-sub-row>span:last-child{text-align:right}.ab-brand-logo{height:140px;width:auto;object-fit:contain}.ab-brand-logo-new{height:120px}.ab-logo-invert{filter:invert(1)}.ab-nav-host{flex:0 0 470px;align-self:stretch;display:flex;align-items:flex-end;padding:0 6px 16px 7.5px;min-width:0;min-height:215px;overflow:hidden}.ab-nav-host #ab-nav-root{width:100%;height:175px}.ab-brand-rot{display:inline-block;animation:ab-brand-fade .55s ease}@keyframes ab-brand-fade{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}.ab-topbtn{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;font-size:11px;font-weight:800;text-transform:uppercase;background:transparent;color:var(--bar-foreground);border:var(--bw) solid var(--bar-border);cursor:pointer}.ab-topbtn:hover{background:var(--destructive);color:var(--destructive-foreground);border-color:var(--destructive)}.ab-topsel{display:flex;align-items:center;gap:8px;padding:7px 10px;border:var(--bw) solid var(--bar-border);background:var(--bar-accent);min-width:300px;flex:0 0 330px}.ab-topsel select{flex:1;background:transparent;color:var(--bar-foreground);border:none;font-size:11px;font-weight:700;outline:none}.ab-topsel select option{color:#111}.ab-topsysok{display:inline-flex;align-items:center;gap:5px;font-size:12.5px;font-weight:700}@media(max-width:760px){.ab-brand-logo{height:84px}.ab-brand-logo-new{height:72px}.ab-brand-title{font-size:2.6rem}.ab-brand-sub,.ab-nav-host{display:none}.ab-brand-iso{width:34px;height:34px;margin-right:40px}.ab-prodswitch{left:14px}}@media(min-width:761px)and (max-width:1439px){.ab-nav-host{flex-basis:300px}.ab-prodswitch{left:326px;flex-wrap:wrap;max-width:calc(100vw - 340px)}.ab-brand-iso{width:78px;height:78px;margin-right:16px}.ab-brand{padding-right:12px}.ab-brand-title{font-size:2.3rem!important}}.ab-shell .ab-binder-tabs{gap:2px}.ab-shell .ab-tab{padding:6px;gap:3px}.ab-shell .ab-tab.active{padding-left:6px;padding-right:6px}.ab-main3{flex:1;min-height:0;display:grid;grid-template-columns:minmax(320px,1.35fr) 392px minmax(280px,1.05fr);grid-template-rows:auto 1fr;gap:12px;padding:12px 14px}.ab-wc1{grid-column:3;grid-row:1;display:flex;flex-direction:column;gap:10px}.ab-wc2{grid-column:2;grid-row:1;display:flex;flex-direction:column;min-height:0}.ab-wc3{grid-column:1;grid-row:1 / 3;display:flex;flex-direction:column;min-height:0;border:var(--bw) solid var(--border);background:var(--card)}.ab-wavance{grid-column:2 / 4;grid-row:2;align-self:end}@media(max-width:1040px){.ab-main3{grid-template-columns:392px 1fr;grid-template-rows:auto auto auto}.ab-wc3{grid-column:1 / 3;grid-row:1;min-height:440px}.ab-wc2{grid-column:1;grid-row:2}.ab-wc1{grid-column:2;grid-row:2}.ab-wavance{grid-column:1 / 3;grid-row:3;align-self:start}}@media(max-width:680px){.ab-main3{grid-template-columns:1fr;grid-template-rows:auto auto auto auto}.ab-wc1,.ab-wc2,.ab-wc3,.ab-wavance{grid-column:1}.ab-wc3{grid-row:1}.ab-wc2{grid-row:2}.ab-wc1{grid-row:3}.ab-wavance{grid-row:4}}.ab-wc2 .ab-catalog{max-height:none}.ab-wc3 .ab-toolhost{border:0;box-shadow:none;display:flex;flex-direction:column;flex:1;min-height:0}.ab-wc3 .ab-toolhost-body{flex:1;overflow-y:auto}.ab-gutter{position:relative;display:flex;flex-direction:column;align-items:center;min-width:10px}.ab-gutter-toggle{margin-top:4px;width:16px;height:34px;border:var(--bw) solid var(--border);background:var(--muted);color:var(--foreground);cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:var(--radius);padding:0}.ab-gutter-toggle:hover{background:var(--destructive);color:var(--destructive-foreground);border-color:var(--destructive)}.ab-gutter-grip{flex:1;width:6px;margin-top:6px;cursor:col-resize;border-radius:var(--radius)}.ab-gutter-grip:hover{background:var(--border)}.ab-myrow{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px}.ab-myrow .card{flex:0 0 auto;width:128px;border:var(--bw) solid var(--border);background:var(--card);padding:9px;cursor:pointer;text-align:left;color:var(--foreground);font-family:inherit}.ab-myrow .card.new{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:var(--muted-foreground);font-weight:800;font-size:10px;text-transform:uppercase}.ab-linkrow{display:flex;align-items:center;gap:8px;padding:7px 9px;border:var(--bw) solid var(--border);background:var(--card)}.ab-linkrow .lbl{flex:1;min-width:0;font-size:11px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ab-iconbtn{display:inline-flex;align-items:center;gap:5px;padding:4px 8px;font-size:9px;font-weight:800;text-transform:uppercase;border:var(--bw) solid var(--border);background:var(--card);color:var(--foreground);cursor:pointer}.ab-iconbtn:hover{background:var(--muted)}.ab-iconbtn.danger:hover{background:var(--destructive);color:var(--destructive-foreground);border-color:var(--destructive)}.ab-workbar{display:flex;align-items:center;gap:8px;padding:10px;min-height:46px;border-top:var(--bw) solid var(--bar-border);background:var(--bar);flex-wrap:wrap}.ab-workbar-btn{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:9px 14px;font-size:11px;font-weight:800;text-transform:uppercase;border:var(--bw) solid var(--bar-border);background:transparent;color:var(--bar-foreground);cursor:pointer}.ab-workbar-btn:hover{filter:brightness(1.12)}.ab-avancefree{display:flex;flex-wrap:wrap;gap:4px 16px}.ab-avancefree .chk{display:inline-flex;align-items:center;gap:6px;padding:3px 4px;background:none;border:none;cursor:pointer;font-size:10px;color:var(--foreground);max-width:100%}.ab-avancefree .chk:hover .t{text-decoration:underline}.ab-avancefree .chk .t{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.ab-dock{border-top:var(--bw) solid var(--border);background:var(--bar);color:var(--bar-foreground)}.ab-dock-tools{display:flex;align-items:stretch;background:var(--bar-accent);border-bottom:var(--bw) solid var(--bar-border);flex-wrap:wrap}.ab-dock-tools .lbl{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;font-size:9px;font-weight:800;text-transform:uppercase;opacity:.7;border-right:var(--bw) solid var(--bar-border)}.ab-dock-nav{display:flex;align-items:stretch;border-bottom:var(--bw) solid var(--bar-border);flex-wrap:wrap}.ab-dock-btn{flex:1;min-width:120px;display:flex;align-items:center;justify-content:center;gap:7px;padding:9px;font-size:11px;font-weight:800;text-transform:uppercase;border:none;border-right:var(--bw) solid var(--bar-border);background:none;color:var(--bar-foreground);cursor:pointer}.ab-dock-btn:last-child{border-right:none}.ab-dock-btn:hover{background:var(--destructive);color:var(--destructive-foreground)}.ab-dock-last{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:7px 14px;font-size:10px}.ab-dock-last a{text-decoration:underline;color:inherit}.ab-dock-last input{border:var(--bw) solid var(--bar-border);background:var(--bar-accent);color:var(--bar-foreground)}.ab-land{flex:1;width:100%;padding:26px 26px 20px;display:flex;flex-direction:column}.ab-land-body{flex:1;display:grid;grid-template-columns:1fr;gap:24px;align-items:stretch}.ab-land-body.with-tools{grid-template-columns:minmax(0,1.05fr) 330px minmax(0,1.25fr)}@media(max-width:1100px){.ab-land-body.with-tools{grid-template-columns:1fr 330px}}@media(max-width:760px){.ab-land-body.with-tools{grid-template-columns:1fr}}.ab-land-content{display:flex;flex-direction:column;gap:20px;min-width:0}.ab-land-bottom{margin-top:auto;display:flex;flex-direction:column;gap:18px}@keyframes abFade{0%{opacity:0}to{opacity:1}}.ab-fade2{animation:abFade 2s ease both}.ab-land-hero h1{font-family:var(--font-heading);font-size:clamp(2rem,4vw,3.2rem);font-weight:800;letter-spacing:-1px;margin:0 0 16px;line-height:1.05}.ab-land-hero p{font-size:clamp(.96rem,1.5vw,1.18rem);line-height:1.55;max-width:920px;margin:0 0 10px;opacity:.85}.ab-land-hero .welcome{font-weight:800;color:var(--destructive);font-size:1.25rem;opacity:1;margin-top:6px}.ab-land-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}.ab-landbtn{display:inline-flex;align-items:center;gap:8px;padding:12px 22px;font-size:13px;font-weight:800;text-transform:uppercase;border:var(--bw) solid var(--border);background:var(--primary);color:var(--primary-foreground);cursor:pointer;font-family:inherit}.ab-landbtn.sec{background:transparent;color:var(--foreground)}.ab-landbtn.sec.on,.ab-landbtn:hover{background:var(--destructive);color:var(--destructive-foreground);border-color:var(--destructive)}.ab-land-sech{font-size:10px;font-weight:800;text-transform:uppercase;opacity:.55;display:inline-flex;align-items:center;gap:6px;margin-bottom:12px;letter-spacing:.05em}.ab-land-proj{display:flex;gap:12px;flex-wrap:wrap}.ab-land-proj .card{flex:0 0 auto;width:200px;border:var(--bw) solid var(--border);background:var(--card);padding:14px;cursor:pointer;text-align:left;color:var(--foreground);font-family:inherit}.ab-land-proj .card.new{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--muted-foreground);font-weight:800;text-transform:uppercase;font-size:11px;min-height:104px;border-style:dashed}.ab-landcat{position:sticky;top:12px;min-width:0;align-self:start}.ab-landcat .ab-catalog{max-height:none}.ab-landwork{position:sticky;top:12px;min-width:0;align-self:start}.ab-landwork .inner{border:var(--bw) solid var(--border);background:var(--card);display:flex;flex-direction:column;min-height:640px}.ab-landwork .head{min-height:40px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 14px;background:var(--bar);color:var(--bar-foreground);border-bottom:var(--bw) solid var(--bar-border);font-weight:700;text-transform:uppercase;font-size:.82rem}.ab-landwork .foot{min-height:46px;border-top:var(--bw) solid var(--bar-border);background:var(--bar)}.ab-land-demo{border:1.5px dashed var(--border);background:var(--muted);padding:22px;text-align:center;color:var(--muted-foreground);font-size:11px;font-weight:700;text-transform:uppercase}@media(prefers-reduced-motion:reduce){.ab-fade2{animation:none}}@media(max-width:760px){html,body{overflow-x:hidden}.ab-root{padding:12px 10px 400px}.ab-main3{grid-template-columns:minmax(0,1fr)}.ab-wc1,.ab-wc2,.ab-wc3,.ab-wavance{min-width:0}.ab-form-grid{grid-template-columns:minmax(0,1fr)}.tech-input-group{min-width:0}.ab-toolhost-body select,.ab-toolhost-body textarea,.ab-toolhost-body input:not([type=checkbox]):not([type=radio]){max-width:100%;min-width:0}.ab-toolhost-body{overflow-x:auto}.ab-toolhost-body.mounted{padding:14px 12px}.ab-workbar{flex-wrap:wrap;padding:8px;gap:6px}.ab-workbar-btn{flex:1 1 auto;min-width:0;padding:8px 10px;font-size:10px}.ab-land{padding:16px 12px 14px}.ab-top{flex-direction:column;align-items:stretch;gap:0}.ab-brand{order:1;flex-direction:row;align-items:center;justify-content:flex-end;gap:10px;padding:44px 12px 8px}.ab-brand-iso{align-self:center;margin:0;width:38px;height:38px}.ab-brand-title{font-size:clamp(.95rem,4.5vw,1.3rem)!important;letter-spacing:.06em!important;white-space:nowrap;padding-left:0}.ab-brand-text{padding-bottom:0}.ab-prodswitch{left:10px;top:8px;right:auto}.ab-prodswitch .ab-topbtn{padding:6px 8px;font-size:9.5px}.ab-topbar{order:2;padding:8px 10px 12px;gap:6px}.ab-topbar .ab-topbtn{padding:8px 9px;font-size:10.5px}.ab-topsel{min-width:0;flex:1 1 100%}.ab-topsysok{display:none}.ab-user-menu{left:0;right:auto;max-width:calc(100vw - 20px)}.ab-bottom-dock{max-height:42vh;overflow-y:auto}.ab-tt{min-width:0;padding:10px 6px;font-size:9px}.ab-tt-select{flex:1 1 100%;min-width:0}.ab-tt-active{padding:10px 12px}.ab-toast{bottom:calc(42vh + 14px)}.ab-statusbar{font-size:10px;gap:8px;padding:8px 10px}.ab-binder-head{padding:9px 10px;font-size:11.5px}.ab-ficha-main,.ab-ficha-side,.ab-linked{padding:12px}.ab-progress-grid{grid-template-columns:repeat(3,1fr)}.page-main-title{font-size:1.6rem;letter-spacing:0}.tech-table{display:block;max-width:100%;overflow-x:auto}.ab-modal-overlay{padding:10px;align-items:flex-start;overflow-y:auto}.ab-modal{margin-top:8vh}.ab-modal input,.ab-modal select,.ab-modal textarea,.ab-auth-modal input,.ab-auth-modal select,.ab-auth-modal textarea{font-size:16px!important}}
