@import"https://fonts.googleapis.com/css2?family=Big+Shoulders+Display:wght@600;800&family=Inter:wght@400;500;600&family=JetBrains+Mono:wght@400;500;700&display=swap";:root{--bg: #12151B;--surface: #1B2029;--surface2: #232935;--border: #2A303C;--accent: #C9A24B;--accent2: #4FA8A0;--text: #EDEEF0;--muted: #8B93A1;--warn: #B5563F}*{box-sizing:border-box}body{margin:0;background:var(--bg);font-family:Inter,sans-serif;color:var(--text)}.app-shell{background:var(--bg);min-height:100vh}.app-shell.center{display:flex;align-items:center;justify-content:center}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.login-card{width:min(100%,420px);background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:32px}.login-icon{color:var(--accent);margin-bottom:18px}.login-copy{font-size:14px;line-height:1.55;margin:12px 0 24px}.login-card label{display:flex;flex-direction:column;gap:7px;font-size:13px;margin-bottom:16px;color:var(--muted)}.login-card input{width:100%;background:var(--surface2);border:1px solid var(--border);border-radius:5px;color:var(--text);padding:11px 12px;font:inherit;outline:none}.login-card input:focus{border-color:var(--accent)}.login-btn{width:100%;border:0;border-radius:5px;padding:12px;background:var(--accent);color:#12151b;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px}.login-btn:disabled{opacity:.7;cursor:wait}.login-error{color:#f08c75;font-size:13px;margin:-4px 0 14px}.logout-btn{border:0;background:none;color:var(--muted);cursor:pointer;display:flex;align-items:center;gap:5px;font-size:12px;padding:4px}.logout-btn:hover{color:var(--text)}.mono{font-family:JetBrains Mono,monospace}.muted{color:var(--muted)}.accent{color:var(--accent)}.accent2{color:var(--accent2)}.warn{color:var(--warn)}.small{font-size:13px}.tiny{font-size:11px}.upper{text-transform:uppercase;letter-spacing:.08em}.spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.header{border-bottom:1px solid var(--border);background:var(--surface);padding:20px 24px}.header-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.brand-line{display:flex;align-items:center;gap:8px;margin-bottom:4px}.dot{width:8px;height:8px;border-radius:50%;background:var(--accent)}.title-xl{font-family:Big Shoulders Display,sans-serif;font-size:36px;font-weight:800;text-transform:uppercase;letter-spacing:-.01em;line-height:1;margin:0}.header-right{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.level-meter{display:flex;align-items:center;gap:12px}.level-bars{display:flex;gap:3px}.level-bar{width:6px;height:18px;background:var(--surface2);border-radius:1px}.level-bar.on{background:var(--accent)}.tabs{border-bottom:1px solid var(--border);background:var(--surface);padding:0 12px;display:flex;gap:4px;overflow-x:auto}.tab-btn{display:flex;align-items:center;gap:8px;padding:12px 16px;font-size:14px;font-weight:500;color:var(--muted);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;white-space:nowrap}.tab-btn:hover{opacity:.8}.tab-btn.active{color:var(--accent);border-bottom-color:var(--accent)}.content{padding:24px;min-height:420px}.section-title{margin-bottom:24px}.section-title h2{font-family:Big Shoulders Display,sans-serif;font-size:28px;font-weight:800;text-transform:uppercase;margin:0}.section-title p{color:var(--muted);font-size:14px;margin:4px 0 0}.kpi-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:32px}@media (min-width: 640px){.kpi-grid{grid-template-columns:repeat(4,1fr)}}.kpi-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:16px}.kpi-card svg{margin-bottom:12px}.kpi-value{font-family:JetBrains Mono,monospace;font-size:20px;font-weight:700}.kpi-label{color:var(--muted);font-size:12px;margin-top:4px}.panel-grid{display:grid;grid-template-columns:1fr;gap:16px}@media (min-width: 640px){.panel-grid{grid-template-columns:1fr 1fr}}.panel{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:20px}.panel h3,.panel h4{font-size:14px;font-weight:600;margin:0 0 12px;display:flex;align-items:center;gap:8px}.panel ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.panel li{display:flex;align-items:flex-start;gap:8px;font-size:14px;color:var(--muted)}.panel li b{color:var(--text)}.panel li svg{margin-top:6px;flex-shrink:0}.stack{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.row-shell{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:12px;display:flex;align-items:flex-start;gap:12px}.grow{flex:1;min-width:0}.edit-input{background:transparent;border:none;color:var(--text);font-size:14px;width:100%;outline:none;font-family:Inter,sans-serif;padding:2px 0}.edit-input.mono{font-family:JetBrains Mono,monospace}.edit-input.done{color:var(--muted);text-decoration:line-through}.edit-textarea{background:transparent;border:none;color:var(--muted);font-size:12px;width:100%;outline:none;resize:none;font-family:Inter,sans-serif;margin-top:4px}.icon-btn{background:none;border:none;color:var(--muted);cursor:pointer;margin-top:4px;flex-shrink:0}.icon-btn:hover{opacity:.7}.add-btn{width:100%;border:1px dashed var(--border);background:none;color:var(--accent);border-radius:8px;padding:10px;font-size:14px;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;margin-bottom:16px}.add-btn:hover{opacity:.8}.pill{font-family:JetBrains Mono,monospace;font-size:11px;font-weight:500;padding:4px 8px;border-radius:4px;text-transform:uppercase;letter-spacing:.04em;border:none;cursor:pointer;white-space:nowrap}.pill-ok{background:#4fa8a026;color:var(--accent2)}.pill-warn{background:#c5a34b26;color:var(--accent)}.pill-muted{background:#8b93a126;color:var(--muted)}.timeline{position:relative;padding-left:24px;margin-bottom:16px}.timeline:before{content:"";position:absolute;left:5px;top:8px;bottom:8px;width:2px;background:var(--border)}.timeline-item{position:relative;margin-bottom:12px}.timeline-dot{position:absolute;left:-25px;top:14px;width:10px;height:10px;border-radius:50%;border:2px solid var(--bg)}.timeline-dot.ok{background:var(--accent2)}.timeline-dot.warn{background:var(--accent)}.orc-group{margin-bottom:20px}.orc-group-head{display:flex;justify-content:flex-end;margin-bottom:8px}.orc-list{background:var(--surface);border:1px solid var(--border);border-radius:8px}.orc-row{display:flex;align-items:center;gap:8px;padding:12px;border-bottom:1px solid var(--border)}.orc-row:last-child{border-bottom:none}.orc-modulo{width:130px;flex-shrink:0;color:var(--accent);font-size:11px;text-transform:uppercase;letter-spacing:.04em}.orc-valor{width:96px;background:var(--surface2);color:var(--text);border:none;border-radius:4px;padding:4px 8px;text-align:right;font-size:14px;outline:none}.total-box{background:var(--surface2);border:1px solid var(--border);border-radius:8px;padding:16px;display:flex;align-items:center;justify-content:space-between;font-weight:600}.total-value{font-size:20px;font-weight:700}.role-grid{display:grid;grid-template-columns:1fr;gap:12px;margin-bottom:24px}@media (min-width: 640px){.role-grid{grid-template-columns:repeat(3,1fr)}}.role-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:16px}.role-title{color:var(--accent);font-size:12px;text-transform:uppercase;letter-spacing:.05em;font-weight:600;margin-bottom:8px}.role-body{font-size:14px;margin-bottom:4px}.bar-split{display:flex;align-items:center;gap:12px}.bar-seg{height:10px;border-radius:3px}.bar-labels{display:flex;justify-content:space-between;margin-top:12px;align-items:center}.bar-labels span{display:flex;align-items:center;gap:4px}.tiny-input{width:44px;background:var(--surface2);border:none;border-radius:4px;padding:2px 4px;text-align:right;font-size:12px;outline:none}.dec-data{width:100px;flex-shrink:0}.checkbox{width:18px;height:18px;border-radius:4px;border:1.5px solid var(--muted);background:none;cursor:pointer;margin-top:3px;flex-shrink:0}.checkbox.checked{background:var(--accent2);border-color:var(--accent2)}.error-box{background:var(--surface);border:1px solid var(--warn);border-radius:8px;padding:20px;max-width:420px;display:flex;gap:12px;align-items:flex-start}.error-box p{margin:0;font-size:14px;color:var(--text)}
