@charset "UTF-8";:root{--bg-primary: #0a0a0a;--bg-surface-dark: #111111;--bg-surface-elevated: #1c1917;--bg-card-cream: #f2efe4;--bg-card-pastel: #c6d6d8;--accent-primary: #e04f16;--accent-secondary: #ff6b35;--text-on-dark: #f2efe4;--text-on-light: #121212;--text-muted: #8c887e;--text-muted-on-light: #5c463c;--border-subtle: rgba(246, 244, 241, .16);--border-on-light: rgba(20, 17, 15, .16);--color-exito: #1f7a4d;--color-error: #b42318;--color-aviso: #ea580c;--color-info: #2c5f86;--overlay: rgba(10, 10, 10, .78);--sombra-flotante: 0 24px 60px rgba(0, 0, 0, .45);--arte-sepia-oscuro: #2b1f16;--arte-sepia-claro: #8a6a4a;--arte-carbon: #1c1c1c;--arte-ocre: #c9a24a;--font-display: "Libre Bodoni", "Times New Roman", serif;--font-editorial: "Libre Bodoni", "Times New Roman", serif;--font-sans: "Public Sans", "Segoe UI", sans-serif;--font-mono: "Space Mono", monospace;--radius-card: 24px;--radius-ticket: 18px;--radius-pill: 9999px;--radius-input: 14px;--espacio-1: 4px;--espacio-2: 8px;--espacio-3: 12px;--espacio-4: 16px;--espacio-5: 20px;--espacio-6: 24px;--espacio-8: 32px;--espacio-10: 40px;--espacio-12: 48px;--espacio-16: 64px;--transicion-rapida: .15s ease;--transicion-media: .28s cubic-bezier(.2, .8, .2, 1);--textura-papel: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48'%3E%3Cg fill='%2314110f' fill-opacity='0.09'%3E%3Ccircle cx='4' cy='6' r='1.2'/%3E%3Ccircle cx='16' cy='4' r='0.9'/%3E%3Ccircle cx='28' cy='7' r='1.2'/%3E%3Ccircle cx='40' cy='5' r='0.9'/%3E%3Ccircle cx='8' cy='18' r='1'/%3E%3Ccircle cx='22' cy='20' r='1.3'/%3E%3Ccircle cx='34' cy='17' r='0.8'/%3E%3Ccircle cx='44' cy='19' r='1.1'/%3E%3Ccircle cx='6' cy='32' r='0.9'/%3E%3Ccircle cx='18' cy='34' r='1.2'/%3E%3Ccircle cx='32' cy='31' r='0.9'/%3E%3Ccircle cx='42' cy='35' r='1.2'/%3E%3C/g%3E%3C/svg%3E");color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}app-shell,app-login-page,app-registro-page,app-cargando-page,app-no-encontrada-page{position:relative;z-index:1}body{margin:0;min-height:100vh;background:var(--bg-primary);color:var(--text-on-dark);font-family:var(--font-sans);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}img,svg{display:block;max-width:100%}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;background:none;border:0;padding:0}a{color:inherit;text-decoration:none}h1,h2,h3,h4,p,ul,ol{margin:0}ul,ol{padding:0;list-style:none}:focus-visible{outline:2px solid var(--accent-secondary);outline-offset:3px;border-radius:6px}::selection{background:var(--accent-primary);color:var(--text-on-light)}.titulo-display{font-family:var(--font-display);font-weight:600;letter-spacing:-.03em;line-height:.95}.titulo-editorial{font-family:var(--font-editorial);font-weight:600;line-height:1.1}.texto-mono{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}.texto-mute{color:var(--text-muted)}.contenedor{width:min(1240px,100% - 2 * var(--espacio-6));margin-inline:auto}.cabecera-pagina{display:flex;justify-content:space-between;align-items:flex-end;gap:var(--espacio-4);margin-bottom:var(--espacio-6);flex-wrap:wrap}.cabecera-pagina h1,.cabecera-pagina h2{font-size:clamp(1.75rem,2.2vw,2rem);letter-spacing:-.03em}.cabecera-pagina p{margin-top:var(--espacio-2);max-width:62ch;color:var(--text-muted);font-size:.95rem}.grilla-bento{display:grid;gap:var(--espacio-4);grid-template-columns:repeat(12,minmax(0,1fr))}.grilla-campos{display:grid;gap:var(--espacio-4) var(--espacio-5);grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:720px){.grilla-campos{grid-template-columns:1fr}}.campo-ancho-completo{grid-column:1/-1}.control{width:100%;padding:12px 14px;border-radius:var(--radius-input);border:1px solid var(--border-subtle);background:var(--bg-surface-elevated);color:var(--text-on-dark);transition:border-color var(--transicion-rapida),box-shadow var(--transicion-rapida)}.control::placeholder{color:var(--text-muted)}.control:focus{outline:none;border-color:var(--accent-secondary);box-shadow:0 0 0 3px #ea580c59}.control[aria-invalid=true]{border-color:var(--color-error)}.control:disabled{opacity:.6;cursor:not-allowed}textarea.control{min-height:120px;resize:vertical}.superficie-clara .control{background:#ffffff8c;border-color:var(--border-on-light);color:var(--text-on-light)}.superficie-clara .control::placeholder{color:var(--text-muted-on-light)}.superficie-clara .control[aria-invalid=true]{border-color:var(--color-error);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-error) 28%,transparent)}.campo--error .control,.campo--error .archivo,.campo--error app-lugar-obra{border-color:var(--color-error);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-error) 32%,transparent)}.aviso{display:flex;gap:var(--espacio-3);align-items:flex-start;padding:var(--espacio-3) var(--espacio-4);border-radius:var(--radius-input);border:1px solid currentColor;font-size:.925rem;line-height:1.4}.aviso--error{color:var(--color-error);background:#b423181a}.superficie-clara .aviso--error{color:var(--text-on-light);background:#1212121a}.aviso--exito{color:var(--color-exito);background:#7fb77e1a}.aviso--info{color:var(--text-on-dark);border-color:var(--border-subtle);background:#2c5f861a}.aviso ul{margin-top:var(--espacio-1);padding-left:1.1em;list-style:disc}.visualmente-oculto{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
