:root{--bg: #0a0a0a;--bg-2: #111111;--bg-3: #181818;--bg-4: #202020;--border: #2a2a2a;--border-soft: #1e1e1e;--accent: #d4f064;--accent-dim: rgba(212,240,100,.12);--accent-dim2: rgba(212,240,100,.06);--text-1: #f0f0f0;--text-2: #a0a0a0;--text-3: #606060;--success: #4ade80;--success-dim: rgba(74,222,128,.1);--warn: #facc15;--warn-dim: rgba(250,204,21,.1);--error: #f87171;--error-dim: rgba(248,113,113,.1);--info: #60a5fa;--info-dim: rgba(96,165,250,.1);--coach: #a78bfa;--coach-dim: rgba(167,139,250,.1);--coach-border: rgba(167,139,250,.28);--radius: 4px;--radius-lg: 8px;--font-display: "Instrument Serif", Georgia, serif;--font-ui: "Syne", system-ui, sans-serif;--font-body: "DM Sans", system-ui, sans-serif;--sidebar-w: 256px;--ease: cubic-bezier(.2, 0, 0, 1)}*{box-sizing:border-box}html,body{margin:0}body{font-family:var(--font-body);background:var(--bg);color:var(--text-1);min-height:100vh;font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased}.layout{display:grid;grid-template-columns:var(--sidebar-w) 1fr;min-height:100vh}.sidebar{background:var(--bg-2);border-right:1px solid var(--border);padding:22px 0 28px;position:sticky;top:0;height:100vh;overflow-y:auto}.mobile-topbar,.nav-toggle,.sidebar-overlay{display:none}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.back-to-portfolio{display:flex;align-items:center;gap:10px;background:var(--accent-dim);border:1px solid rgba(212,240,100,.3);border-radius:var(--radius);text-decoration:none;padding:9px 14px;margin:0 22px 18px;transition:all .15s var(--ease)}.back-to-portfolio:hover{border-color:var(--accent);background:#d4f0642e;transform:translateY(-1px)}.back-arrow{font-size:14px;color:var(--accent);line-height:1}.back-text{display:flex;flex-direction:column;gap:2px}.back-text strong{font-family:var(--font-ui);font-size:11px;font-weight:700;color:var(--text-1);font-style:normal}.back-text small{font-family:var(--font-ui);font-size:9px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}.brand{font-family:var(--font-display);font-size:1.35rem;font-style:italic;padding:0 22px 24px;border-bottom:1px solid var(--border-soft);color:var(--text-1)}.brand .tag{display:block;font-family:var(--font-ui);font-size:9px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--accent);font-style:normal;margin-bottom:4px}.phase{margin-top:18px}.phase h3{font-family:var(--font-ui);font-size:9px;letter-spacing:.15em;text-transform:uppercase;color:var(--text-3);font-weight:700;padding:0 22px 6px;margin:0}.phase ul{list-style:none;margin:0;padding:0}.nav-item{display:block;padding:9px 22px;cursor:pointer;font-size:.82rem;color:var(--text-2);border-left:2px solid transparent;transition:background .15s var(--ease),color .15s var(--ease);line-height:1.35}.nav-item:hover{background:var(--bg-3);color:var(--text-1)}.nav-item.active{background:var(--accent-dim2);border-left-color:var(--accent);color:var(--text-1)}.content{padding:56px 64px 80px;max-width:920px;display:flex;flex-direction:column}.step{flex:1}.step-kicker{font-family:var(--font-ui);font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--accent);display:block;margin-bottom:12px}h1{font-family:var(--font-display);font-size:2.4rem;font-style:italic;font-weight:400;line-height:1.12;color:var(--text-1);margin:0 0 14px}h2{font-family:var(--font-ui);font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--text-2);margin:36px 0 12px}h3{font-family:var(--font-ui);font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--text-3);margin:20px 0 8px}h4{font-family:var(--font-ui);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-2);margin:16px 0 6px}p{margin:0 0 12px}.step-intro{color:var(--text-2);font-size:.95rem;line-height:1.7;max-width:62ch;margin:0 0 28px}.placeholder{color:var(--text-3);font-style:italic}.hint,.field-hint,small.hint{color:var(--text-3);font-size:.78rem;font-style:italic;line-height:1.55;margin:0}.muted{color:var(--text-3)}a{color:var(--accent)}.nav-footer{display:flex;justify-content:space-between;border-top:1px solid var(--border-soft);padding-top:22px;margin-top:36px}button{font-family:var(--font-ui);font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:9px 16px;border-radius:var(--radius);border:1px solid var(--border);background:transparent;color:var(--text-2);cursor:pointer;transition:all .15s var(--ease)}button:hover:not(:disabled){border-color:var(--text-3);color:var(--text-1)}button:disabled{opacity:.35;cursor:not-allowed}.nav-footer button:last-child,#brief-send{background:var(--accent);color:#0a0a0a;border-color:var(--accent)}.nav-footer button:last-child:hover:not(:disabled),#brief-send:hover:not(:disabled){background:#c8e856;color:#0a0a0a;transform:translateY(-1px);box-shadow:0 4px 16px #d4f06433}.coach-btn{font-size:9px;padding:6px 11px;color:var(--coach);border-color:var(--coach-border)}.coach-btn:hover{background:var(--coach-dim);color:var(--coach)}.coach-btn.small{padding:4px 9px}.new-case-btn,.view-case-btn{display:block;width:calc(100% - 44px);margin:0 22px 10px;font-size:9px;padding:8px 0}.new-case-btn{margin-bottom:10px}.view-case-btn{margin-bottom:24px}.intro-start-btn{margin-top:20px;background:var(--accent);color:#0a0a0a;border-color:var(--accent)}.intro-start-btn:hover:not(:disabled){background:#c8e856;color:#0a0a0a;transform:translateY(-1px);box-shadow:0 4px 16px #d4f06433}.modal-overlay{position:fixed;inset:0;background:#0009;backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:50}.modal-overlay[hidden]{display:none}.modal-card{width:min(420px,calc(100vw - 48px));background:var(--bg-3);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px;box-shadow:0 16px 48px #00000080}.modal-card h3{font-family:var(--font-display);font-style:italic;font-size:1.25rem;color:var(--text-1);margin:0 0 10px}.modal-card p{font-size:.85rem;color:var(--text-2);line-height:1.5;margin:0 0 20px}.modal-actions{display:flex;justify-content:flex-end;gap:10px}.modal-btn-danger{background:var(--coach-dim);color:var(--coach);border-color:var(--coach-border)}.modal-btn-danger:hover:not(:disabled){background:var(--coach);color:var(--bg)}.add-btn{margin-top:14px;color:var(--accent);border-color:#d4f0644d}.add-btn:hover{background:var(--accent-dim);color:var(--accent)}.icon-btn{font-family:var(--font-body);font-size:16px;padding:2px 9px;color:var(--text-3);letter-spacing:0;text-transform:none}.fields{display:grid;gap:26px;margin-top:4px}.field{display:grid;gap:6px}.field-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.field-head label{font-family:var(--font-ui);font-size:10px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--text-2)}.field-badges{display:flex;gap:5px;flex-shrink:0}.badge{font-family:var(--font-ui);font-size:8px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:3px 7px;border-radius:var(--radius)}.badge.req{background:var(--accent-dim);color:var(--accent)}.badge.opt{background:var(--bg-4);color:var(--text-3)}.badge.ai{background:var(--coach-dim);color:var(--coach)}textarea,input[type=text],input[type=email],select{width:100%;background:var(--bg-3);color:var(--text-1);border:1px solid var(--border);border-radius:var(--radius);padding:11px 13px;font-family:var(--font-body);font-size:.92rem;line-height:1.6;transition:border-color .15s var(--ease),background .15s var(--ease);resize:vertical}textarea::placeholder,input::placeholder{color:var(--text-3)}textarea:focus,input:focus,select:focus{outline:none;border-color:#d4f06473;background:var(--bg-4)}label.check,label.radio{display:inline-flex;align-items:center;gap:8px;color:var(--text-2);font-size:13px;cursor:pointer;font-family:var(--font-body);text-transform:none;letter-spacing:0}label.check.extra{margin-top:6px}label.radio{margin-right:24px}input[type=checkbox],input[type=radio]{accent-color:var(--accent)}.coach-panel{margin-top:10px}.coach-loading{color:var(--coach);font-style:italic;font-size:.82rem}.coach-honest{background:var(--bg-3);border-left:3px solid var(--text-3);padding:10px 14px;border-radius:var(--radius);font-size:.82rem;color:var(--text-2);font-family:var(--font-body)}.coach-result{background:var(--bg-3);border:1px solid var(--border);border-left:3px solid var(--coach);padding:12px 16px;border-radius:var(--radius-lg);font-size:.84rem}.coach-result.status-ok{border-left-color:var(--success)}.coach-result.status-mejorable{border-left-color:var(--warn)}.coach-result.status-no_cumple{border-left-color:var(--error)}.coach-status{font-family:var(--font-ui);font-size:9px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--coach);margin-bottom:8px}.coach-result.status-ok .coach-status{color:var(--success)}.coach-result.status-mejorable .coach-status{color:var(--warn)}.coach-result.status-no_cumple .coach-status{color:var(--error)}.coach-result p{margin:5px 0;line-height:1.6}.coach-result .socratic{color:var(--coach);font-style:italic}.coach-result .example{color:var(--text-3);border-top:1px dashed var(--border);padding-top:7px;margin-top:10px;font-size:.78rem}.alert{background:var(--error-dim);border:1px solid rgba(248,113,113,.25);border-left:3px solid var(--error);color:var(--text-1);padding:12px 16px;border-radius:var(--radius-lg);margin-bottom:18px;font-size:.85rem}.alert.small{padding:8px 12px;font-size:.78rem;margin:6px 0 0;grid-column:1 / -1}.guide{background:var(--bg-2);border:1px solid var(--border-soft);border-radius:var(--radius-lg);padding:12px 16px;margin:10px 0 18px}.guide summary{cursor:pointer;font-family:var(--font-ui);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--text-2)}.guide summary:hover{color:var(--accent)}.stakeholder-list,.best-practices,.bank{padding-left:18px;margin:12px 0 0;color:var(--text-2);font-size:.85rem;line-height:1.65}.stakeholder-list li,.best-practices li,.bank li{margin:5px 0}.guide .hint{margin-top:8px}.output-block{margin-top:40px;padding:20px 24px;background:var(--bg-3);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:var(--radius-lg)}.output-block h2{margin-top:0}.output-block textarea{background:var(--bg);border-color:var(--border-soft)}.objectives{list-style:none;padding:0;margin:14px 0 0;display:grid;gap:14px}.objective-item{background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius-lg);padding:14px}.objective-row{display:flex;gap:10px;align-items:flex-start}.objective-row textarea{flex:1}.objective-meta{display:flex;align-items:center;gap:12px;margin-top:10px;flex-wrap:wrap}.bloom-badge{font-family:var(--font-ui);font-size:8px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:3px 8px;border-radius:var(--radius)}.bloom-badge.ok{background:var(--success-dim);color:var(--success)}.bloom-badge.warn{background:var(--warn-dim);color:var(--warn)}.block{margin-top:36px}.layout-2col{display:grid;grid-template-columns:1fr 1.2fr;gap:32px;align-items:flex-start}.layout-2col>*{min-width:0}@media (max-width: 1100px){.layout-2col{grid-template-columns:1fr}}table.compare{width:100%;border-collapse:collapse;font-size:.78rem;line-height:1.55;background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}table.compare th,table.compare td{border-top:1px solid var(--border-soft);padding:9px 12px;vertical-align:top;text-align:left}table.compare thead th{background:var(--bg-3);color:var(--text-1);font-family:var(--font-ui);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}table.compare th[scope=row]{background:var(--bg-2);color:var(--text-3);font-family:var(--font-ui);font-size:9px;letter-spacing:.12em;text-transform:uppercase;width:100px;font-weight:700}table.compare td{color:var(--text-2)}.chain{display:grid;gap:18px;margin-top:14px}.chain-card{display:grid;grid-template-columns:1fr 1fr;gap:26px;background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius-lg);padding:18px 20px}.chain-card-block{display:block}.chain-label,.chain-control label{font-family:var(--font-ui);font-size:9px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--text-3);display:block;margin-bottom:6px}.chain-objective p{margin:4px 0;line-height:1.55;color:var(--text-1)}.chain-param{color:var(--text-2);font-size:.82rem;margin-top:10px}.chain-param.warn{color:var(--warn)}.criterion-form-hint{color:var(--text-3);font-size:.78rem;margin-top:6px;font-style:italic}.param-def{margin-top:12px;padding:10px 14px;background:var(--bg);border-left:2px solid var(--accent);border-radius:var(--radius);font-size:.82rem}.param-def p{margin:4px 0;line-height:1.55;color:var(--text-2)}.param-def strong{color:var(--text-1);font-weight:500}.criterion-meta{display:flex;flex-direction:column;gap:6px;margin-top:10px}.threshold-fixed{display:inline-block;font-family:var(--font-ui);font-size:9px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:4px 10px;background:var(--success-dim);color:var(--success);border-radius:var(--radius);width:max-content}.threshold-fixed.soft{background:var(--info-dim);color:var(--info)}.questions{list-style:none;padding:0;margin:14px 0 0;display:grid;gap:12px}.question-item{background:var(--bg);border:1px solid var(--border-soft);border-radius:var(--radius);padding:12px}.question-row{display:flex;gap:10px}.question-row textarea{flex:1}.bias-ok{margin-top:8px;font-size:.78rem;color:var(--success);font-style:italic}.bias-hits{margin:10px 0 0;padding-left:0;list-style:none;font-size:.8rem;display:grid;gap:6px}.bias-hits li{padding:7px 12px;border-left:2px solid var(--warn);background:var(--warn-dim);border-radius:var(--radius);color:var(--text-2);line-height:1.5}.bias-hit.sesgo{border-left-color:var(--error);background:var(--error-dim)}.bias-hit.sesgo strong{color:var(--error)}.bias-hit.mala_practica strong{color:var(--warn)}.reminder{margin-top:16px;padding:12px 16px;background:var(--info-dim);border-left:3px solid var(--info);border-radius:var(--radius);font-size:.84rem;color:var(--text-2)}.brief-meter{margin:24px 0 8px}.brief-meter .meter-bar{height:4px;background:var(--border);border-radius:99px;overflow:hidden}.brief-meter .meter-bar>span{display:block;height:100%;background:var(--accent);transition:width .4s var(--ease)}.brief-meter.ok .meter-bar>span{background:var(--success)}.brief-meter.warn .meter-bar>span{background:var(--warn)}.brief-meter.bad .meter-bar>span{background:var(--error)}.meter-label{font-family:var(--font-ui);font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);margin-top:8px}.brief-ready{background:var(--success-dim);border-left:3px solid var(--success);color:var(--success);padding:12px 16px;border-radius:var(--radius-lg);margin:12px 0 24px;font-family:var(--font-ui);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.missing summary{cursor:pointer;font-family:var(--font-ui);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--warn);margin:12px 0}.missing ul{padding-left:18px;color:var(--text-3);font-size:.82rem}.brief-mail-gate{margin:18px 0 32px;padding:16px;background:var(--bg-3);border-radius:var(--radius-lg)}.brief-mail-gate label{font-family:var(--font-ui);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-2)}.brief-mail-row{display:flex;gap:10px;margin-top:8px;flex-wrap:wrap}.brief-mail-row input{flex:1 1 240px}.brief-mail-gate .field-hint{margin:8px 0 0}.brief-mail-msg{margin:10px 0 0;font-size:.85rem}.brief-mail-gate[data-state=sent] .brief-mail-msg{color:var(--success)}.brief-mail-gate[data-state=error] .brief-mail-msg{color:var(--error)}.brief-doc{background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius-lg);padding:28px 32px}.brief-doc h2:first-child{margin-top:0}.brief-doc blockquote{margin:10px 0;padding:10px 16px;background:var(--bg);border-left:3px solid var(--accent);border-radius:var(--radius);color:var(--text-1);font-style:italic}.brief-doc .lead{font-family:var(--font-display);font-size:1.05rem;font-style:italic;color:var(--text-1);line-height:1.6}.brief-doc .brief-list{padding-left:22px;margin:6px 0 14px;color:var(--text-2)}.brief-doc .brief-list li{margin:4px 0}.relato{font-size:1.02rem}.brief-table{width:100%;border-collapse:collapse;margin:12px 0 20px;font-size:.85rem}.brief-table th{text-align:left;font-family:var(--font-ui);font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-2);background:var(--bg-3);padding:10px 12px;border:1px solid var(--border)}.brief-table td{padding:10px 12px;border:1px solid var(--border);color:var(--text-1);vertical-align:top;line-height:1.5}.brief-table tbody tr:nth-child(2n) td{background:var(--bg-3)}@media (max-width: 768px){.layout{grid-template-columns:1fr}.mobile-topbar{display:flex;align-items:center;gap:14px;padding:14px 16px;background:var(--bg-2);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:35}.mobile-topbar .brand{padding:0;border-bottom:none;font-size:1.05rem}.nav-toggle{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:36px;height:36px;padding:0;font-size:17px;color:var(--text-1)}.sidebar{position:fixed;inset:0 auto 0 0;width:min(84vw,300px);transform:translate(-100%);transition:transform .22s var(--ease);z-index:45;box-shadow:8px 0 32px #00000073}.sidebar.nav-open{transform:translate(0)}.sidebar-overlay{display:block;position:fixed;inset:0;background:#00000080;z-index:40}.sidebar-overlay[hidden]{display:none}.content{padding:28px 18px 64px;max-width:100%}h1{font-size:1.7rem}.chain-card{grid-template-columns:1fr;gap:14px}.brief-doc{padding:18px 16px}table.compare th[scope=row]{width:76px}.nav-footer{flex-wrap:wrap;gap:10px}.nav-footer button{flex:1 1 auto}}
