@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700&display=swap";.admin-shell{--ink:#17231f;--muted:#69766f;--paper:#f5f3ed;--panel:#fffefa;--line:#e5e2d9;--green:#234d40;--mint:#dcece5;--gold:#c98d43;min-height:100vh;background:var(--paper);color:var(--ink);font-family:DM Sans,sans-serif}.admin-shell *,.admin-auth *{box-sizing:border-box}.admin-shell h1,.admin-shell h2,.admin-shell h3,.admin-auth h1{font-family:Manrope,sans-serif;color:var(--ink)}.admin-shell a{color:var(--green)}.admin-shell aside{position:fixed;inset:0 auto 0 0;width:248px;padding:30px 20px 24px;background:#183a31;display:flex;flex-direction:column;z-index:10}.admin-brand{display:flex;align-items:center;gap:12px;padding:0 10px 34px;color:#fff!important;text-decoration:none}.admin-brand>span,.brand-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#d9ab66;color:#183a31;font:700 20px Manrope}.admin-brand div{display:flex;flex-direction:column;line-height:1.05}.admin-brand strong{font:700 17px Manrope}.admin-brand small{color:#afc5bd;text-transform:uppercase;letter-spacing:.14em;font-size:9px;margin-top:5px}.admin-shell aside nav{display:grid;gap:7px}.admin-shell aside nav button,.aside-foot button{border:0;background:transparent;color:#b9cbc4;display:flex;gap:13px;align-items:center;padding:12px 14px;border-radius:10px;font:500 14px DM Sans;cursor:pointer;text-align:left}.admin-shell aside nav button:hover,.admin-shell aside nav button.active{background:#ffffff1a;color:#fff}.admin-shell aside nav button b{margin-left:auto;background:#d9ab66;color:#183a31;border-radius:20px;min-width:22px;padding:2px 6px;text-align:center;font-size:11px}.admin-shell aside nav button span{font-size:18px}.aside-foot{margin-top:auto;border-top:1px solid rgba(255,255,255,.12);padding-top:18px;display:grid;gap:6px}.aside-foot a,.aside-foot button{color:#afc5bd!important;font-size:13px;padding:8px 12px;text-decoration:none}.admin-main{min-height:100vh;margin-left:248px;padding:46px clamp(28px,5vw,76px) 80px;max-width:1500px}.page-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:36px}.page-heading h1{font-size:clamp(27px,3vw,38px);line-height:1.15;margin:4px 0 8px}.page-heading p:not(.overline){margin:0;color:var(--muted)}.overline{font-size:10px!important;font-weight:700;letter-spacing:.18em;color:#8d6b39!important;margin:0;text-transform:uppercase}button.primary,.primary{border:0;background:var(--green);color:#fff;padding:12px 18px;border-radius:9px;font:600 13px DM Sans;cursor:pointer;box-shadow:0 4px 12px #183a3126}button.primary:hover{background:#2d6050}button:disabled{opacity:.55;cursor:wait}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:22px}.metric{background:var(--panel);border:1px solid var(--line);border-radius:13px;padding:20px;box-shadow:0 2px 10px #1e2a2408}.metric span,.metric small{display:block;color:var(--muted);font-size:12px}.metric strong{display:block;font:700 30px Manrope;margin:6px 0;color:var(--ink)}.notice{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:16px 18px;background:#fff8e8;border:1px solid #eeddb7;border-radius:11px;color:#6d542d;margin-bottom:40px}.notice span{font-size:13px}.notice button{border:0;background:transparent;color:#6d542d;font-weight:700;cursor:pointer}.section-title{display:flex;justify-content:space-between;margin-bottom:15px}.section-title h2{font-size:21px;margin:3px 0}.app-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.app-card{display:flex;gap:18px;background:var(--panel);border:1px solid var(--line);border-top:3px solid var(--app-color);border-radius:13px;padding:22px}.app-icon,.mini-icon{flex:0 0 auto;display:grid;place-items:center;width:48px;height:48px;background:color-mix(in srgb,var(--app-color) 22%,white);border-radius:13px;font-size:24px}.app-info{min-width:0;flex:1}.app-info>div:first-child{display:flex;justify-content:space-between;gap:10px;align-items:center}.app-info h3{margin:0;font-size:18px}.app-info p{font-size:13px;color:var(--muted);margin:8px 0}.app-info small{color:#8a938f;font-size:11px}.row-links{display:flex;gap:14px;flex-wrap:wrap;margin-top:12px}.row-links a,.row-links button{font-size:12px;font-weight:700;text-decoration:none;border:0;background:transparent;color:var(--green);padding:0;cursor:pointer}.status,.type-chip{display:inline-block;width:max-content;border-radius:20px;padding:4px 9px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;background:#eceeea;color:#59635e}.status-activa,.status-aprobada,.status-listo,.status-completado{background:#e0f0e7;color:#276044}.status-pendiente,.status-por-enlazar,.status-trabajando{background:#fff1d7;color:#946224}.status-cambios-solicitados{background:#e7e7f5;color:#565c91}.status-rechazada,.status-error{background:#f8e2df;color:#9a4038}.type-chip{background:#eef1ef;margin-right:8px;color:#52605a}.stack{display:grid;gap:13px}.proposal-card{position:relative;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:20px}.proposal-card h3{font-size:18px;margin:13px 0 6px}.proposal-card p{color:var(--muted);font-size:13px;margin:0;max-width:75ch}.proposal-meta{display:flex;gap:18px;color:#8a938f;font-size:11px;margin-top:15px}.proposal-card .secondary{position:absolute;right:20px;bottom:20px;border:1px solid #cbd3ce;background:transparent;color:var(--green);padding:8px 12px;border-radius:8px;font-weight:700;cursor:pointer}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0d1d189e;display:grid;place-items:center;padding:20px;z-index:50;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal{position:relative;width:min(680px,100%);max-height:92vh;overflow:auto;background:var(--panel);border-radius:16px;padding:30px;box-shadow:0 24px 80px #0000004d}.modal-close{position:absolute;right:18px;top:14px;border:0;background:transparent;font-size:27px;color:#6d7873;cursor:pointer}.modal h2{font-size:25px;margin:12px 0 8px}.modal h3{font-size:15px;margin:23px 0 8px}.modal-summary{color:var(--muted)}.modal dl{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid var(--line);padding:12px 0}.modal dl div{display:grid}.modal dt{font-size:10px;text-transform:uppercase;color:var(--muted)}.modal dd{margin:2px 0;font-size:12px;font-weight:700}.preview{background:#f2f1eb;border-left:3px solid #d9ab66;border-radius:6px;padding:17px;font-size:13px;line-height:1.7;margin-bottom:12px}.modal label,.auth-card label{display:grid;gap:6px;font-size:12px;font-weight:700;color:#4d5a54;margin:16px 0}.modal input,.modal textarea,.modal select,.auth-card input,.filter{width:100%;border:1px solid #cfd4d0;border-radius:8px;background:#fff;padding:11px;font:13px DM Sans;color:var(--ink)}.decision-row{display:flex;gap:9px;margin:18px 0}.decision-row button{border:0;border-radius:8px;padding:10px 13px;font-weight:700;cursor:pointer}.approve{background:#dcefe4;color:#225d40}.changes{background:#eee9d7;color:#735c29}.reject{background:#f6e2df;color:#963d37}.modal>small{color:var(--muted)}.table-list{display:grid;gap:9px}.table-row{display:grid;grid-template-columns:48px minmax(150px,1.5fr) auto 1fr auto 1.2fr;gap:16px;align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:11px;padding:14px}.mini-icon{width:38px;height:38px;font-size:18px}.table-row>div:nth-child(2){display:grid}.table-row small{color:var(--muted)}.table-row>span:not(.status){font-size:12px;color:var(--muted)}.add-button{margin-top:18px}.app-form{width:min(560px,100%)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.app-form label{margin:10px 0}.app-form textarea{min-height:70px}.agent-row{display:grid;grid-template-columns:12px minmax(160px,1fr) auto 2fr auto;align-items:center;gap:14px;background:var(--panel);border:1px solid var(--line);padding:17px;border-radius:11px}.agent-row>div{display:grid}.agent-row small{color:var(--muted)}.agent-row p{margin:0;font-size:12px;color:var(--muted)}.agent-row a{font-size:12px;font-weight:700}.agent-dot{width:9px;height:9px;border-radius:50%;background:#9aa29e}.agent-dot.listo,.agent-dot.completado{background:#53a879;box-shadow:0 0 0 4px #e2f1e8}.agent-dot.trabajando{background:#dfa94f;box-shadow:0 0 0 4px #f8eedc}.filter{max-width:430px;margin-bottom:18px}.history-list{display:grid;gap:9px}.history-list article{display:grid;grid-template-columns:150px 1fr;gap:18px;background:var(--panel);border:1px solid var(--line);padding:17px;border-radius:10px}.history-list article>div{display:grid}.history-list small{color:var(--muted);margin-top:3px}.history-list p{margin:8px 0 0;font-size:13px}.empty{text-align:center;padding:50px;color:var(--muted);border:1px dashed #cbd1cc;border-radius:12px}.empty span{font-size:28px}.demo-banner{display:flex;gap:12px;align-items:center;background:#fff3d8;border:1px solid #ebd29e;color:#6b532c;border-radius:8px;padding:10px 14px;margin-bottom:28px;font-size:12px}.toast{position:fixed;top:18px;right:22px;z-index:80;background:#173a30;color:#fff;border-radius:9px;padding:12px 18px;font-size:13px;box-shadow:0 8px 30px #0003;cursor:pointer}.mobile-nav{display:none}.admin-auth{min-height:100vh;display:grid;place-items:center;padding:24px;background:#173a30;font-family:DM Sans,sans-serif;color:#17231f}.auth-card{width:min(410px,100%);background:#fffefa;border-radius:17px;padding:36px;box-shadow:0 24px 80px #0000004d}.auth-card .brand-mark{margin-bottom:22px}.auth-card h1{font-size:29px;margin:7px 0}.auth-card>p:not(.overline){color:#69766f}.auth-card .primary{width:100%;margin:4px 0 18px}.auth-card>a{display:block;text-align:center;color:#234d40;font-size:12px}.form-error{background:#f8e2df;color:#8b342d!important;padding:10px;border-radius:7px;font-size:12px}.spinner{width:32px;height:32px;border:3px solid #dce6e1;border-top-color:#234d40;border-radius:50%;animation:spin .7s linear infinite;margin:auto}@keyframes spin{to{transform:rotate(360deg)}}.admin-shell{--ink: #eef3f2;--muted: #93a8ac;--paper: #070b10;--panel: #131d24;--line: #24343f;--green: #00d9ff;--mint: rgba(0, 217, 255, .15);--gold: #a855f7;background:radial-gradient(ellipse 70% 45% at 55% -10%,rgba(0,217,255,.1),transparent 60%),radial-gradient(ellipse 55% 40% at 100% 100%,rgba(168,85,247,.08),transparent 60%),var(--paper)}.admin-shell aside{background:#0b1117;border-right:1px solid #24343f}.admin-brand>span,.brand-mark{background:linear-gradient(135deg,#00d9ff,#a855f7);color:#070b10;box-shadow:0 0 22px #00d9ff38}.admin-brand small,.aside-foot a,.aside-foot button{color:#7f969a!important}.admin-shell aside nav button,.aside-foot button{color:#93a8ac}.admin-shell aside nav button:hover,.admin-shell aside nav button.active{background:#00d9ff1a;color:#eef3f2}.admin-shell aside nav button.active{box-shadow:inset 3px 0 #00d9ff}.admin-shell aside nav button b{background:#a855f7;color:#fff}.overline{color:#00d9ff!important;text-shadow:0 0 12px rgba(0,217,255,.35)}button.primary,.primary{background:linear-gradient(135deg,#00bdda,#7c3aed);color:#fff;box-shadow:0 5px 18px #00d9ff26}button.primary:hover{background:linear-gradient(135deg,#00d9ff,#8b5cf6)}.metric,.app-card,.proposal-card,.table-row,.agent-row,.history-list article{background:#131d24e0;box-shadow:0 8px 28px #00000029}.metric:hover,.app-card:hover,.proposal-card:hover{border-color:#3a5a63}.notice,.demo-banner{background:#a855f71c;border-color:#a855f761;color:#d8b4fe}.notice button{color:#00d9ff}.app-icon,.mini-icon{background:color-mix(in srgb,var(--app-color) 20%,#131d24)}.app-info small,.proposal-meta{color:#6f858a}.status,.type-chip{background:#1b2931;color:#a9babd}.status-activa,.status-aprobada,.status-listo,.status-completado{background:#22c55e24;color:#86efac}.status-pendiente,.status-por-enlazar,.status-trabajando{background:#f59e0b24;color:#fcd34d}.status-cambios-solicitados{background:#a855f729;color:#d8b4fe}.status-rechazada,.status-error{background:#ef444424;color:#fca5a5}.proposal-card .secondary{border-color:#3a5a63;color:#00d9ff}.modal-backdrop{background:#02060ac7}.modal{background:#131d24;border:1px solid #2d414c}.modal-close{color:#93a8ac}.preview{background:#0c1319;border-left-color:#a855f7}.modal label,.auth-card label{color:#b8c7c9}.modal input,.modal textarea,.modal select,.auth-card input,.filter{background:#0b1117;border-color:#30434d;color:#eef3f2}.modal input:focus,.modal textarea:focus,.modal select:focus,.auth-card input:focus,.filter:focus{border-color:#00d9ff;outline:2px solid rgba(0,217,255,.13)}.approve{background:#22c55e29;color:#86efac}.changes{background:#a855f729;color:#d8b4fe}.reject{background:#ef444429;color:#fca5a5}.agent-dot.listo,.agent-dot.completado{background:#22c55e;box-shadow:0 0 0 4px #22c55e1f}.agent-dot.trabajando{background:#f59e0b;box-shadow:0 0 0 4px #f59e0b1f}.empty{border-color:#30434d}.toast{background:#10252c;border:1px solid #00d9ff;box-shadow:0 8px 30px #00d9ff21}.admin-auth{background:radial-gradient(circle at 50% 0,rgba(0,217,255,.14),transparent 42%),radial-gradient(circle at 100% 100%,rgba(168,85,247,.12),transparent 40%),#070b10;color:#eef3f2}.auth-card{background:#131d24;border:1px solid #2a3e48;box-shadow:0 25px 90px #0000007a}.auth-card>p:not(.overline){color:#93a8ac}.auth-card>a{color:#00d9ff}.form-error{background:#ef444424;color:#fca5a5!important}.spinner{border-color:#24343f;border-top-color:#00d9ff}@media(max-width:1050px){.metrics{grid-template-columns:repeat(2,1fr)}.app-grid{grid-template-columns:1fr}.table-row{grid-template-columns:42px 1.3fr auto 1fr}.table-row>span:nth-of-type(2){display:none}.table-row .row-links{grid-column:2/-1;margin-top:0}}@media(max-width:720px){.admin-shell aside{display:none}.admin-main{margin-left:0;padding:28px 17px 96px}.mobile-nav{position:fixed;display:grid;grid-template-columns:repeat(5,1fr);bottom:0;left:0;right:0;background:#0b1117;border-top:1px solid var(--line);padding:7px 5px max(7px,env(safe-area-inset-bottom));z-index:30}.mobile-nav button{border:0;background:transparent;color:#70858a;display:grid;justify-items:center;gap:1px;font-size:17px}.mobile-nav button small{font-size:9px}.mobile-nav button.active{color:var(--green)}.page-heading{align-items:flex-start;flex-direction:column;margin-bottom:24px}.page-heading .primary{width:100%}.metrics{grid-template-columns:repeat(2,1fr);gap:9px}.metric{padding:15px}.notice{grid-template-columns:1fr}.app-card{padding:17px}.proposal-card .secondary{position:static;margin-top:15px}.proposal-meta{flex-wrap:wrap;gap:6px 13px}.table-row{grid-template-columns:38px 1fr auto}.table-row>span:not(.status){display:none}.table-row .row-links{grid-column:2/-1}.agent-row{grid-template-columns:12px 1fr auto}.agent-row p{grid-column:2/-1}.agent-row>a{grid-column:2/-1}.modal{padding:25px 19px}.modal dl{grid-template-columns:1fr;gap:8px}.decision-row{display:grid}.history-list article{grid-template-columns:1fr}.demo-banner{align-items:flex-start;flex-direction:column}.auth-card{padding:28px 22px}}:root{--bg: #070b10;--surface: rgba(20, 30, 38, .55);--surface-solid: #131d24;--border: #24343f;--border-bright: #3a5a63;--text-primary: #eef3f2;--text-secondary: #93a8ac;--text-muted: #566970;--accent-teal: #00d9ff;--accent-teal-dim: rgba(0, 217, 255, .15);--accent-rose: #a855f7;--accent-rose-dim: rgba(168, 85, 247, .15);--font-display: "Space Grotesk", sans-serif;--font-body: "IBM Plex Sans", sans-serif;--font-mono: "IBM Plex Mono", monospace}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--text-primary);font-family:var(--font-body);line-height:1.6;-webkit-font-smoothing:antialiased;position:relative;overflow-x:hidden}.matrix-rain{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;opacity:.5;pointer-events:none}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(ellipse 80% 50% at 50% -10%,rgba(0,217,255,.1),transparent 60%),radial-gradient(ellipse 60% 40% at 100% 100%,rgba(168,85,247,.08),transparent 60%);z-index:0}a{color:var(--accent-teal);text-decoration:none;transition:opacity .15s}a:hover{opacity:.8;text-decoration:underline}a:focus-visible,button:focus-visible{outline:2px solid var(--accent-teal);outline-offset:3px}.wrap{position:relative;z-index:1;max-width:720px;margin:0 auto;padding:0 24px}.trace-line{position:absolute;left:24px;top:0;bottom:0;width:1px;background:linear-gradient(to bottom,transparent,var(--accent-teal) 6%,var(--border-bright) 50%,var(--accent-teal) 94%,transparent);opacity:.5}@media(max-width:640px){.trace-line{left:12px}}.node{position:absolute;left:24px;top:40px;width:9px;height:9px;border-radius:50%;background:var(--accent-teal);transform:translate(-50%);box-shadow:0 0 0 4px var(--accent-teal-dim),0 0 16px 2px #00d9ff80;animation:pulse 3s ease-in-out infinite}@media(max-width:640px){.node{left:12px}}@keyframes pulse{0%,to{box-shadow:0 0 0 4px var(--accent-teal-dim),0 0 16px 2px #00d9ff80}50%{box-shadow:0 0 0 6px var(--accent-teal-dim),0 0 22px 4px #00d9ffb3}}@media(prefers-reduced-motion:reduce){.node{animation:none}}.section{position:relative;padding:64px 0 64px 56px}@media(max-width:640px){.section{padding-left:32px}}.hero{position:relative;padding:96px 0 64px 56px}@media(max-width:640px){.hero{padding-left:32px}}.hero-tag{font-family:var(--font-mono);font-size:14px;color:var(--text-muted);margin-top:20px}.hero-tag:before{content:"> ";color:var(--accent-teal)}.cv-button{display:inline-block;margin-top:24px;padding:10px 20px;border:1px solid var(--accent-teal);border-radius:6px;color:var(--accent-teal);font-family:var(--font-mono);font-size:14px;text-decoration:none;transition:box-shadow .2s,background .2s}.cv-button:hover{box-shadow:0 0 16px #00d9ff40;background:var(--accent-teal-dim);text-decoration:none}.eyebrow{font-family:var(--font-mono);font-size:13px;letter-spacing:.14em;color:var(--accent-teal);text-transform:uppercase;margin:0 0 12px;text-shadow:0 0 12px rgba(0,217,255,.5)}.eyebrow:before{content:"// ";opacity:.6}h1,h2,h3{font-family:var(--font-display);font-weight:500;margin:0;letter-spacing:-.01em}h1{font-size:clamp(30px,6vw,46px);line-height:1.2}h2{font-size:26px;margin-bottom:20px}h3{font-size:18px}.lede{font-size:17px;color:var(--text-secondary);max-width:62ch;margin:0 0 16px}.card{background:var(--surface);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--border);border-radius:10px;padding:24px;margin-bottom:16px;transition:border-color .2s,box-shadow .2s,transform .2s}.card:hover{border-color:var(--accent-teal);box-shadow:0 0 24px #00d9ff1f;transform:translateY(-2px)}@media(prefers-reduced-motion:reduce){.card:hover{transform:none}}.card-status{display:inline-block;font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;padding:3px 8px;border-radius:4px;background:#e0637c1f;color:var(--accent-rose);margin-bottom:10px}.card-stack{font-family:var(--font-mono);font-size:12px;color:var(--accent-teal);margin-top:12px}.card-links{display:flex;flex-wrap:wrap;gap:16px;margin-top:10px}.timeline{margin-top:24px;border-left:1px solid var(--border);padding-left:20px}.timeline-item{margin-bottom:20px}.timeline-item:last-child{margin-bottom:0}.timeline-when{font-family:var(--font-mono);font-size:12px;color:var(--accent-teal)}.timeline-what{color:var(--text-secondary);font-size:15px;margin-top:2px}.exp-list{list-style:none;padding:0;margin:20px 0 0}.exp-list li{padding:14px 0;border-top:1px solid var(--border);color:var(--text-secondary)}.exp-list li:first-child{border-top:none}.exp-label{font-family:var(--font-mono);font-size:12px;color:var(--accent-rose);display:block;margin-bottom:4px}.exp-link{display:inline-block;margin-top:8px;font-family:var(--font-mono);font-size:13px}.contact-links{display:flex;gap:24px;margin-top:24px;flex-wrap:wrap;font-family:var(--font-mono);font-size:14px}.contact-links a{padding:8px 16px;border:1px solid var(--border);border-radius:6px;transition:border-color .2s,box-shadow .2s}.contact-links a:hover{border-color:var(--accent-teal);box-shadow:0 0 16px #00d9ff33;text-decoration:none}footer{position:relative;z-index:1;text-align:center;padding:40px 24px;color:var(--text-muted);font-family:var(--font-mono);font-size:12px}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
