/* ============================================================
   Startvex — Área do utilizador (integrada no app.html)
   Tudo isolado sob .ua para não colidir com base.css
   ============================================================ */
.ua{--violet:#8B7CF6}
.ua *{box-sizing:border-box}

/* generic */
.ua .card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}
.ua .card-pad{padding:22px}
.ua .section-title{font-family:var(--font-display);font-weight:700;font-size:16px}
.ua .ua-link{color:var(--blue);font-size:13px;font-weight:600;font-family:var(--font-mono);cursor:pointer}
.ua .ua-link:hover{text-decoration:underline}
.ua .ua-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:13.5px;font-weight:600;border-radius:9px;padding:9px 16px;border:1px solid var(--border-2);background:var(--surface-2);color:var(--text);transition:.15s;font-family:inherit}
.ua .ua-btn:hover{border-color:rgba(255,255,255,.28)}
.ua .ua-btn.primary{background:var(--blue);color:#04121f;border-color:transparent}
.ua .ua-btn.primary:hover{background:#7cbcff}
.ua .ua-btn.ghost{background:var(--surface);border-color:var(--border)}
.ua .ua-badge{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:11px;padding:4px 11px;border-radius:100px;border:1px solid var(--border-2)}
.ua .ua-badge.founder{color:var(--blue);background:rgba(90,168,255,.1);border-color:rgba(90,168,255,.25)}
.ua .ua-badge.contrib{color:var(--green);background:rgba(158,243,209,.08);border-color:rgba(158,243,209,.22)}
.ua .ua-badge.invest{color:var(--amber);background:rgba(245,196,108,.09);border-color:rgba(245,196,108,.24)}

/* ---------- PROFILE ---------- */
.ua .prof-banner{border-radius:var(--radius);border:1px solid var(--border-2);overflow:visible;position:relative;height:auto}
.ua .prof-banner-bg{position:absolute;top:0;left:0;right:0;height:120px;border-radius:calc(var(--radius) - 1px) calc(var(--radius) - 1px) 0 0;background:linear-gradient(115deg,#233a5c 0%,#3a5c52 42%,#4a3a6b 100%)}
.ua .prof-banner-bg::after{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(ellipse 60% 120% at 78% -10%,rgba(139,124,246,.4),transparent 60%)}
.ua .prof-headrow{display:flex;align-items:flex-end;gap:20px;padding:66px 28px 24px;position:relative;z-index:1}
.ua .prof-ava{width:104px;height:104px;border-radius:20px;border:4px solid var(--surface);background:linear-gradient(135deg,var(--violet),var(--blue));background-size:cover;background-position:center;flex:none;display:grid;place-items:center;font-family:var(--font-display);font-weight:700;font-size:34px;color:#fff}
.ua .prof-idwrap{flex:1;min-width:0;padding-bottom:4px}
.ua .prof-name{font-size:26px;font-family:var(--font-display);font-weight:700;letter-spacing:-.02em}
.ua .prof-handle{font-family:var(--font-mono);font-size:13px;color:var(--muted);margin:6px 0 12px}
.ua .prof-badges{display:flex;gap:8px;flex-wrap:wrap}
.ua .prof-actions{display:flex;gap:10px;align-items:center;padding-bottom:6px}
.ua .ua-ico{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;color:var(--muted);border:1px solid var(--border-2);background:var(--surface);transition:.15s}
.ua .ua-ico:hover{color:var(--text);border-color:rgba(255,255,255,.25)}
.ua .ua-ico svg{width:17px;height:17px}

.ua .kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:26px 0 22px}
.ua .kpi{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:18px}
.ua .kpi .k-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
.ua .kpi .k-ic{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;background:var(--surface-3)}
.ua .kpi .k-ic svg{width:17px;height:17px;color:var(--blue)}
.ua .kpi .k-note{font-family:var(--font-mono);font-size:12px;color:var(--muted)}
.ua .kpi .k-val{font-family:var(--font-mono);font-size:30px;font-weight:700;letter-spacing:-.02em}
.ua .kpi .k-lbl{font-size:13px;color:var(--muted);margin-top:4px}

.ua .two-col{display:grid;grid-template-columns:1.55fr 1fr;gap:16px;align-items:start}
.ua .card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}
.ua .wallet-cta{text-align:center;padding:34px 20px 30px}
.ua .wallet-cta p{color:var(--muted);font-size:13.5px;max-width:420px;margin:0 auto 20px}
.ua .stack{display:flex;flex-direction:column;gap:16px}
.ua .skills-empty{margin-top:14px}
.ua .chip{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;padding:6px 12px;border-radius:100px;border:1px solid var(--border-2);background:var(--surface-2);color:var(--text-2)}
.ua .chip.ghost{color:var(--muted)}
.ua .rep-row{margin-top:16px}
.ua .rep-row+.rep-row{margin-top:18px}
.ua .rep-top{display:flex;justify-content:space-between;font-size:13px;margin-bottom:8px}
.ua .rep-top b{font-family:var(--font-mono);color:var(--muted)}
.ua .rep-bar{height:5px;border-radius:100px;background:var(--surface-3);overflow:hidden}
.ua .rep-bar span{display:block;height:100%;width:0;background:var(--blue)}
.ua .empty-note{text-align:center;color:var(--muted);font-size:13.5px;padding:34px 0}

/* ---------- EDIT PROFILE ---------- */
.ua .edit-back{display:inline-flex;align-items:center;gap:7px;font-size:13.5px;color:var(--muted);font-weight:500;margin-bottom:18px;background:none;border:none;cursor:pointer}
.ua .edit-back:hover{color:var(--text)}
.ua .edit-tabs{display:flex;gap:26px;border-bottom:1px solid var(--border);margin-bottom:26px;flex-wrap:wrap}
.ua .edit-tab{padding:0 2px 14px;font-size:14px;font-weight:600;color:var(--muted);border:none;background:none;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .15s;cursor:pointer;font-family:inherit}
.ua .edit-tab:hover{color:var(--text-2)}
.ua .edit-tab.active{color:var(--text);border-bottom-color:var(--blue)}
.ua .edit-grid{display:grid;grid-template-columns:1fr 340px;gap:26px;align-items:start}
.ua .edit-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:26px}
.ua .edit-panel h3{font-size:17px;font-family:var(--font-display);font-weight:700}
.ua .edit-panel .sub{font-size:13px;color:var(--muted);margin:5px 0 22px}
.ua .tab-pane{display:none}
.ua .tab-pane.active{display:block}
.ua .field{margin-bottom:18px}
.ua .field>label{display:block;font-size:12.5px;font-weight:600;margin-bottom:8px;color:var(--text-2)}
.ua .field .hint{font-size:11.5px;color:var(--muted);margin-top:7px;font-family:var(--font-mono)}
.ua .inp{width:100%;background:var(--bg);border:1px solid var(--border-2);border-radius:9px;padding:11px 13px;color:var(--text);font-family:inherit;font-size:14px;outline:none;transition:border-color .15s}
.ua .inp:focus{border-color:var(--blue)}
.ua .inp::placeholder{color:var(--muted)}
.ua .inp:disabled{color:var(--muted);background:var(--surface-2)}
.ua textarea.inp{resize:vertical;min-height:92px}
.ua select.inp{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%2382847F' stroke-width='2'%3E%3Cpath d='M2 4l4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center}
.ua .field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.ua .photo-row{display:flex;align-items:center;gap:16px}
.ua .photo-thumb{width:56px;height:56px;border-radius:12px;background:linear-gradient(135deg,var(--violet),var(--blue));background-size:cover;background-position:center;flex:none}
.ua .toggle-row{display:flex;align-items:center;justify-content:space-between;gap:20px}
.ua .toggle-row+.toggle-row{margin-top:4px;padding-top:18px;border-top:1px solid var(--border)}
.ua .tr-title{font-size:14px;font-weight:600}
.ua .tr-desc{font-size:12.5px;color:var(--muted);margin-top:2px}
.ua .switch{width:42px;height:24px;border-radius:100px;background:var(--surface-3);border:1px solid var(--border-2);position:relative;flex:none;transition:background .18s,border-color .18s;cursor:pointer;padding:0}
.ua .switch::after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#9a9c96;transition:transform .18s,background .18s}
.ua .switch.on{background:rgba(90,168,255,.35);border-color:var(--blue)}
.ua .switch.on::after{transform:translateX(18px);background:var(--blue)}
.ua .info-box{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:18px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2);margin-top:8px}
.ua .role-list{display:flex;flex-direction:column;gap:12px;margin-top:4px}
.ua .role{display:flex;align-items:center;gap:14px;padding:16px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}
.ua .role.locked{opacity:.5}
.ua .role-ic{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:var(--surface-3);flex:none}
.ua .role-ic svg{width:18px;height:18px;color:var(--blue)}
.ua .role.contrib .role-ic svg{color:var(--green)}
.ua .role.invest .role-ic svg{color:var(--amber)}
.ua .role-t b{font-size:14px}
.ua .role-t span{display:block;font-size:12.5px;color:var(--muted);font-family:var(--font-mono);margin-top:2px}
.ua .role-state{margin-left:auto;font-family:var(--font-mono);font-size:11px;display:flex;align-items:center;gap:6px;color:var(--green)}
.ua .role-state .d{width:6px;height:6px;border-radius:50%;background:var(--green)}
.ua .role-state.blocked{color:var(--muted)}
.ua .skill-search{display:flex;gap:10px}
.ua .skill-search .inp{flex:1}
.ua .sug-label{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:22px 0 12px}
.ua .chip-wrap{display:flex;flex-wrap:wrap;gap:9px}
.ua .chip.add{cursor:pointer;transition:.15s}
.ua .chip.add:hover{border-color:var(--blue);color:var(--blue)}
.ua .chip.sel{background:rgba(90,168,255,.12);border-color:rgba(90,168,255,.3);color:var(--blue);cursor:pointer}
.ua .chip .x{opacity:.6}
.ua .prev-wrap{position:sticky;top:90px}
.ua .prev-label{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:12px}
.ua .prev-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}
.ua .prev-banner{height:74px;background:linear-gradient(115deg,#233a5c,#3a5c52 42%,#4a3a6b);position:relative}
.ua .prev-av{width:52px;height:52px;border-radius:13px;border:3px solid var(--surface);position:absolute;bottom:-26px;left:20px;background:linear-gradient(135deg,var(--violet),var(--blue));background-size:cover;background-position:center;display:grid;place-items:center;font-family:var(--font-display);font-weight:700;color:#fff}
.ua .prev-body{padding:38px 20px 22px}
.ua .prev-name{font-size:18px;font-family:var(--font-display);font-weight:700}
.ua .prev-handle{font-family:var(--font-mono);font-size:12px;color:var(--muted);margin:4px 0 14px}
.ua .prev-badges{display:flex;gap:7px;flex-wrap:wrap}
.ua .prev-bio{font-size:13px;color:var(--text-2);margin-top:14px}
.ua .edit-foot{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}

/* ---------- WALLET ---------- */
.ua .page-intro{margin-bottom:24px}
.ua .page-intro h2{font-size:24px;font-family:var(--font-display);font-weight:700;letter-spacing:-.02em}
.ua .page-intro p{color:var(--muted);font-size:14px;margin-top:6px;max-width:640px}
.ua .wallet-hero{display:grid;grid-template-columns:1.35fr 1fr;gap:16px;margin-bottom:22px;align-items:stretch}
.ua .wallet-balance{background:linear-gradient(135deg,rgba(90,168,255,.1),rgba(158,243,209,.05));border:1px solid var(--border-2);border-radius:var(--radius);padding:26px;position:relative;overflow:hidden}
.ua .wallet-balance::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 50% 80% at 85% 0%,rgba(90,168,255,.18),transparent 60%);pointer-events:none}
.ua .wb-label{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.ua .wb-value{font-family:var(--font-mono);font-size:42px;font-weight:700;letter-spacing:-.02em;margin:10px 0}
.ua .wb-value small{font-size:22px;color:var(--muted)}
.ua .wb-note{font-size:12.5px;color:var(--muted);font-family:var(--font-mono)}
.ua .wb-spark{height:70px;margin-top:20px;display:flex;align-items:flex-end}
.ua .action-list{display:flex;flex-direction:column;gap:10px}
.ua .action{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1px solid var(--border);border-radius:12px;background:var(--surface);transition:.15s;text-align:left;color:inherit;cursor:pointer;font-family:inherit}
.ua .action:hover{border-color:var(--border-2);background:var(--surface-2)}
.ua .action .a-ic{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;background:var(--surface-3);flex:none}
.ua .action .a-ic svg{width:17px;height:17px;color:var(--blue)}
.ua .action b{font-size:14px;display:block}
.ua .action span{font-size:11.5px;color:var(--muted);font-family:var(--font-mono)}
.ua .stat-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-bottom:16px}
.ua .stat{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:16px}
.ua .stat .s-lbl{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.ua .stat .s-val{font-family:var(--font-mono);font-size:22px;font-weight:700;margin:8px 0 4px}
.ua .stat .s-sub{font-size:11px;color:var(--muted)}
.ua .stat.pending .s-val{color:var(--amber);font-size:18px}
.ua .icard-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:8px}
.ua .icard{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:18px}
.ua .icard .ic{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;margin-bottom:16px}
.ua .icard .ic svg{width:17px;height:17px}
.ua .icard .iv{font-family:var(--font-mono);font-size:26px;font-weight:700}
.ua .icard .il{font-size:12.5px;color:var(--muted);margin-top:3px}
.ua .wtabs{display:flex;gap:22px;border-bottom:1px solid var(--border);margin:26px 0 22px;flex-wrap:wrap}
.ua .wtab{padding:0 2px 13px;font-size:13.5px;font-weight:600;color:var(--muted);background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;display:flex;align-items:center;gap:7px;cursor:pointer;font-family:inherit}
.ua .wtab .d{width:6px;height:6px;border-radius:50%}
.ua .wtab.active{color:var(--text);border-bottom-color:var(--blue)}
.ua .wpane{display:none}
.ua .wpane.active{display:block}
.ua .acct-card{padding:24px}
.ua .acct-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}
.ua .acct-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding-bottom:22px;border-bottom:1px solid var(--border);margin-bottom:20px}
.ua .acct-col .ac-v{font-family:var(--font-mono);font-size:22px;font-weight:700}
.ua .acct-col .ac-l{font-size:12px;color:var(--muted);margin-top:5px}
.ua .acct-actions{display:flex;flex-wrap:wrap;gap:10px}
.ua .acct-actions .ua-btn{padding:8px 14px;font-size:13px}
.ua .bottom-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}
.ua .mini-empty{text-align:center;color:var(--muted);font-size:13px;padding:26px 0 4px}
.ua .mini-empty small{display:block;font-size:11.5px;margin-top:6px;opacity:.8}

/* toast */
.ua-toast{position:fixed;bottom:26px;left:50%;transform:translateX(-50%) translateY(20px);background:var(--surface-2);border:1px solid var(--border-2);border-radius:11px;padding:12px 20px;font-size:13.5px;font-weight:600;display:flex;align-items:center;gap:9px;opacity:0;pointer-events:none;transition:.25s;z-index:1200;color:var(--text);font-family:var(--font-body)}
.ua-toast svg{width:16px;height:16px;color:var(--green)}
.ua-toast.show{opacity:1;transform:translateX(-50%) translateY(0)}

@media(max-width:1080px){
  .ua .two-col,.ua .edit-grid,.ua .wallet-hero,.ua .bottom-grid{grid-template-columns:1fr}
  .ua .kpi-grid,.ua .stat-grid,.ua .icard-grid,.ua .acct-cols{grid-template-columns:repeat(2,1fr)}
  .ua .prev-wrap{position:static}
}

/* ---------- Wizard · passo Equipa (alocação) ---------- */
.wz-team-intro h3{font-family:var(--font-display);font-weight:700;font-size:17px}
.wz-team-intro p{font-size:13px;color:var(--muted);margin:6px 0 22px;max-width:560px}
.wz-alloc{background:var(--surface-2);border:1px solid var(--border);border-radius:14px;padding:22px}
.wz-alloc-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:16px}
.wz-alloc-label{font-size:14px;font-weight:600;color:var(--text)}
.wz-alloc-pct{font-family:var(--font-mono);font-size:15px;color:var(--muted)}
.wz-alloc-pct b{font-size:28px;font-weight:700;color:var(--blue);letter-spacing:-.02em}
.wz-range{-webkit-appearance:none;appearance:none;width:100%;height:6px;border-radius:100px;outline:none;background:linear-gradient(to right,var(--blue) 0%,var(--blue) var(--fill,80%),var(--surface-3) var(--fill,80%),var(--surface-3) 100%)}
.wz-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:var(--blue);border:3px solid var(--surface-2);box-shadow:0 0 0 1px var(--blue);cursor:pointer}
.wz-range::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:var(--blue);border:3px solid var(--surface-2);cursor:pointer}
.wz-alloc-scale{display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:11px;color:var(--muted);margin-top:10px}
.wz-alloc-tokens{margin-top:18px;padding-top:16px;border-top:1px solid var(--border);font-size:13px;color:var(--text-2)}
.wz-alloc-tokens b{color:var(--text);font-family:var(--font-mono)}

/* wizard layout + preview extras */
.wz-left{min-width:0}
.wz-foot{display:flex;justify-content:flex-end;gap:12px;margin-top:22px;padding-top:22px;border-top:1px solid var(--border)}
.prev-idrow{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:2px 0 12px}
.prev-scid{display:inline-flex;align-items:center;gap:5px;font-family:var(--font-mono);font-size:11.5px;color:var(--muted)}
.prev-onchain{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.08em;padding:3px 8px;border-radius:100px;background:rgba(158,243,209,.1);color:var(--green)}
.pr-item .pr-m{margin-left:auto;font-family:var(--font-mono);font-size:10px;color:var(--muted)}
.pr-item span:not(.pr-dot):not(.pr-m){font-size:12px;color:var(--text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* equipa step */
.eq-row{display:flex;gap:12px;align-items:stretch}
.eq-row .input{flex:1}
.eq-pct{display:flex;flex-direction:column;justify-content:center;align-items:center;min-width:96px;padding:6px 10px;border:1px solid var(--border-2);border-radius:10px;background:var(--surface-2);text-align:center}
.eq-pct b{font-family:var(--font-mono);font-size:15px;color:var(--text)}
.eq-pct span{font-size:10px;color:var(--muted)}
.eq-invite{display:flex;gap:10px;align-items:stretch;flex-wrap:wrap}
.eq-invite .input[type=email]{flex:1;min-width:180px}
.eq-invite .select{width:130px}
.eq-invite .input#inv-tokens{width:120px}
.eq-invite .eq-pct{min-width:80px}
.eq-members{margin-top:18px;display:flex;flex-direction:column;gap:10px}
.eq-member{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}
.eq-av{width:34px;height:34px;border-radius:50%;flex:none}
.eq-m-main{flex:1;min-width:0}
.eq-m-main b{font-size:14px}
.eq-m-main span{display:block;font-size:12px;color:var(--muted);font-family:var(--font-mono);margin-top:1px}
.eq-m-nums{text-align:right}
.eq-m-nums b{font-family:var(--font-mono);font-size:13px}
.eq-m-nums span{display:block;font-size:11px;color:var(--muted)}
.eq-badge{font-family:var(--font-mono);font-size:10px;letter-spacing:.04em;padding:3px 9px;border-radius:100px;background:rgba(139,124,246,.16);color:var(--violet);flex:none}

/* roadmap step */
.rm-list{display:flex;flex-direction:column}
.rm-fixed{display:flex;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid var(--border)}
.rm-lock{width:26px;height:26px;flex:none;display:grid;place-items:center;color:var(--muted)}
.rm-lock svg{width:15px;height:15px}
.rm-fixed b{font-size:13.5px}
.rm-fixed span{display:block;font-size:12px;color:var(--muted);font-family:var(--font-mono);margin-top:2px}
.rm-edit{padding:16px 0 8px;display:flex;flex-direction:column;gap:10px;border-bottom:1px solid var(--border)}
.rm-edit-row{display:flex;gap:10px;align-items:stretch}
.rm-edit-row .input{flex:1}
.rm-confirm{width:44px;flex:none;border:1px solid var(--border-2);border-radius:10px;background:var(--surface-2);color:var(--muted);display:grid;place-items:center;transition:.15s}
.rm-confirm svg{width:17px;height:17px}
.rm-confirm.ready{color:var(--blue);border-color:var(--blue)}
.rm-confirm.done{background:var(--green);color:#04121f;border-color:var(--green)}
.rm-add{display:flex;gap:10px;margin-top:16px}
.rm-add .input{flex:1}

/* review step */
.rev{display:flex;flex-direction:column}
.rev-row{display:flex;flex-direction:column;gap:6px;padding:16px 0;border-bottom:1px solid var(--border)}
.rev-row:last-child{border-bottom:none}
.rev-l{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.rev-v{font-size:14px;color:var(--text)}
.rev-v b{font-family:var(--font-mono)}
.rev-tag{font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;padding:3px 9px;border-radius:100px;background:rgba(158,243,209,.1);color:var(--green);margin-left:8px}

/* ---------- Cowork · Overview estruturado (progresso, projeção, alertas, destaque) ---------- */
#screen-execucao .cw-ovgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start;margin-bottom:20px}
#screen-execucao .cw-ovcol{display:flex;flex-direction:column;gap:16px;min-width:0}
#screen-execucao .cw-ovgrid .cw-card{padding:16px 18px}
#screen-execucao .ov-cardhd{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}
#screen-execucao .ov-hd-pct{font-family:'Space Grotesk';font-weight:700;font-size:16px;color:var(--blue)}
#screen-execucao .ov-dev-total{height:8px !important;margin-bottom:16px}
#screen-execucao .ov-dev-total>i{background:linear-gradient(90deg,var(--blue),var(--green)) !important}
#screen-execucao .ov-dev-list{display:flex;flex-direction:column;gap:11px}
#screen-execucao .ov-dev-row{display:flex;align-items:center;gap:12px}
#screen-execucao .ov-dev-lbl{width:120px;flex:none;font-size:12.5px;color:var(--text-2)}
#screen-execucao .ov-dev-row .cw-pbar{flex:1;height:6px}
#screen-execucao .ov-dev-row b{width:34px;text-align:right;font-family:'JetBrains Mono',monospace;font-size:12px;color:var(--muted)}
#screen-execucao .ov-proj-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
#screen-execucao .ov-proj{background:var(--surface-2);border:1px solid var(--border);border-radius:11px;padding:13px 14px}
#screen-execucao .ov-proj-v{font-family:'Space Grotesk';font-weight:700;font-size:22px;letter-spacing:-.02em}
#screen-execucao .ov-proj-v span{font-size:13px;color:var(--muted);font-weight:600}
#screen-execucao .ov-proj-l{font-size:11px;color:var(--muted);margin-top:3px}
#screen-execucao .ov-alert-count{width:22px;height:22px;border-radius:50%;background:rgba(255,107,107,.16);color:#ff6b6b;display:grid;place-items:center;font-family:'JetBrains Mono',monospace;font-size:11px;font-weight:700}
#screen-execucao .ov-alert{display:flex;align-items:center;gap:12px;padding:11px 0;border-top:1px solid var(--border)}
#screen-execucao .ov-alert-dot{width:8px;height:8px;border-radius:50%;flex:none}
#screen-execucao .ov-alert.high .ov-alert-dot{background:#ff6b6b;box-shadow:0 0 8px #ff6b6b}
#screen-execucao .ov-alert.med .ov-alert-dot{background:#f5c46c;box-shadow:0 0 8px #f5c46c}
#screen-execucao .ov-alert-main{flex:1;min-width:0}
#screen-execucao .ov-alert-t{font-size:13px;font-weight:500}
#screen-execucao .ov-alert-s{font-size:11.5px;color:var(--muted);margin-top:2px;font-family:'JetBrains Mono',monospace}
#screen-execucao .ov-alert-tag{font-family:'JetBrains Mono',monospace;font-size:9.5px;letter-spacing:.04em;text-transform:uppercase;padding:3px 8px;border-radius:100px;background:rgba(255,107,107,.14);color:#ff6b6b;flex:none}
#screen-execucao .ov-alert-tag.med{background:rgba(245,196,108,.14);color:#f5c46c}
#screen-execucao .ov-so-row{display:flex;align-items:center;gap:11px;padding:10px 0;border-top:1px solid var(--border)}
#screen-execucao .ov-so-rank{width:20px;flex:none;text-align:center;font-family:'Space Grotesk';font-weight:700;font-size:14px;color:var(--muted)}
#screen-execucao .ov-so-row:first-of-type .ov-so-rank{color:#f5c46c}
#screen-execucao .ov-so-main{flex:1;min-width:0}
#screen-execucao .ov-so-name{font-size:13px;font-weight:600}
#screen-execucao .ov-so-sub{font-size:11px;color:var(--muted);font-family:'JetBrains Mono',monospace;margin-top:1px}
#screen-execucao .ov-so-xp{flex:none;text-align:right}
#screen-execucao .ov-so-xp span{display:block;font-family:'JetBrains Mono',monospace;font-size:10px;color:var(--muted);margin-top:4px}
@media(max-width:1000px){#screen-execucao .cw-ovgrid{grid-template-columns:1fr}}

/* baixa performance */
#screen-execucao .ov-lp-row{display:flex;align-items:center;gap:11px;padding:10px 0;border-top:1px solid var(--border)}
#screen-execucao .ov-lp-tag{font-family:'JetBrains Mono',monospace;font-size:9.5px;letter-spacing:.04em;text-transform:uppercase;padding:3px 8px;border-radius:100px;background:rgba(120,130,145,.18);color:var(--muted);flex:none}
#screen-execucao .ov-lp-tag.warn{background:rgba(245,196,108,.14);color:#f5c46c}
/* a expirar */
#screen-execucao .ov-exp-row{display:flex;align-items:center;gap:12px;padding:11px 0;border-top:1px solid var(--border)}
#screen-execucao .ov-exp-time{flex:none;width:42px;text-align:center}
#screen-execucao .ov-exp-time b{display:block;font-family:'Space Grotesk';font-weight:700;font-size:16px;color:var(--text)}
#screen-execucao .ov-exp-time span{font-size:9.5px;color:var(--muted);font-family:'JetBrains Mono',monospace}
#screen-execucao .ov-exp-bar{flex:none !important;width:70px !important;height:5px}
/* concluído */
#screen-execucao .ov-done-row{display:flex;align-items:center;gap:11px;padding:10px 0;border-top:1px solid var(--border)}
#screen-execucao .ov-done-ic{width:22px;height:22px;border-radius:50%;flex:none;display:grid;place-items:center;background:rgba(79,209,163,.16);color:#4fd1a3}
#screen-execucao .ov-done-row .cw-mono{margin-left:auto}
/* roadmap chart */
#screen-execucao .ov-rm-chart{position:relative}
#screen-execucao .ov-rm-svg{width:100%;height:200px;display:block;overflow:visible}
#screen-execucao .ov-rm-grid{stroke:var(--border);stroke-width:1;stroke-dasharray:3 5}
#screen-execucao .ov-rm-line{fill:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
#screen-execucao .ov-rm-line.done{stroke:#5aa8ff}
#screen-execucao .ov-rm-line.proj{stroke:#4fd1a3;stroke-dasharray:5 6;opacity:.75}
#screen-execucao .ov-rm-pt{stroke:var(--surface);stroke-width:2.5}
#screen-execucao .ov-rm-pt.done{fill:#5aa8ff}
#screen-execucao .ov-rm-pt.now{fill:#9ef3d1;stroke:#4fd1a3}
#screen-execucao .ov-rm-pt.proj{fill:var(--surface);stroke:#4fd1a3;stroke-width:2}
#screen-execucao .ov-rm-axis{display:flex;justify-content:space-between;margin-top:10px}
#screen-execucao .ov-rm-axis span{flex:1;text-align:center;font-family:'JetBrains Mono',monospace;font-size:10px;color:var(--muted)}
#screen-execucao .ov-rm-axis span.now{color:#4fd1a3;font-weight:700}
#screen-execucao .ov-rm-legend{display:flex;gap:18px;margin-top:14px;padding-top:14px;border-top:1px solid var(--border)}
#screen-execucao .ov-rm-legend span{display:flex;align-items:center;gap:6px;font-size:11.5px;color:var(--muted)}
#screen-execucao .ov-rm-legend .dot{width:9px;height:9px;border-radius:50%}
#screen-execucao .ov-rm-legend .dot.done{background:#5aa8ff}
#screen-execucao .ov-rm-legend .dot.now{background:#9ef3d1}
#screen-execucao .ov-rm-legend .dot.proj{background:transparent;border:2px solid #4fd1a3}

/* ---------- Cowork · modal adicionar membro ---------- */
#screen-execucao .cw-mfoot{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}
#screen-execucao .mbr-confirm-card{border:1px solid var(--border);border-radius:12px;background:var(--surface-2);padding:16px;display:flex;flex-direction:column;gap:2px}
#screen-execucao .mbr-cf-head{display:flex;align-items:center;gap:12px;padding-bottom:14px;margin-bottom:8px;border-bottom:1px solid var(--border)}
#screen-execucao .mbr-cf-av{width:40px;height:40px;border-radius:11px;flex:none;display:grid;place-items:center;font-family:'Space Grotesk';font-weight:700;color:#04121f;background:linear-gradient(135deg,#5aa8ff,#9ef3d1)}
#screen-execucao .mbr-cf-name{font-family:'Space Grotesk';font-weight:700;font-size:15px}
#screen-execucao .mbr-cf-email{font-size:12px;color:var(--muted);font-family:'JetBrains Mono',monospace;margin-top:2px}
#screen-execucao .mbr-cf-row{display:flex;align-items:center;justify-content:space-between;padding:8px 0;font-size:13px;color:var(--muted)}
#screen-execucao .mbr-cf-row b{color:var(--text);font-family:'JetBrains Mono',monospace}
#screen-execucao .mbr-done-ic{width:56px;height:56px;border-radius:50%;margin:0 auto;display:grid;place-items:center;background:rgba(158,243,209,.14);color:var(--green)}

/* ---------- Cowork · membro expansível (permissões inline) ---------- */
#screen-execucao .mbr{border-bottom:1px solid var(--border)}
#screen-execucao .mbr:last-child{border-bottom:none}
#screen-execucao .mbr-head{border-bottom:none}
#screen-execucao .mbr-toggle{width:30px;height:30px;flex:none;display:grid;place-items:center;border:1px solid var(--border-2);border-radius:8px;background:var(--surface-2);color:var(--muted);cursor:pointer;transition:transform .2s,color .15s}
#screen-execucao .mbr-toggle:hover{color:var(--text)}
#screen-execucao .mbr.open .mbr-toggle{transform:rotate(180deg);color:var(--blue);border-color:var(--blue)}
#screen-execucao .mbr-panel{padding:6px 20px 18px}
#screen-execucao .mbr-panel[hidden]{display:none}

/* ---------- Cowork · Open Contributors & SC Council (empilhados) ---------- */
#screen-execucao .cw-teamlayout{display:grid;grid-template-columns:1.35fr 1fr;gap:16px;align-items:start;margin:4px 0 20px}
#screen-execucao .cw-tl-right{display:flex;flex-direction:column;gap:16px;min-width:0}
#screen-execucao .cw-tl-left{min-width:0}
@media(max-width:1000px){#screen-execucao .cw-teamlayout{grid-template-columns:1fr}}
#screen-execucao .cw-teamblocks{display:flex;flex-direction:column;gap:14px;margin:4px 0 20px}
#screen-execucao .cw-tblock-help{font-size:12px;color:var(--muted);padding:12px 20px 4px}
#screen-execucao .ctr-row,#screen-execucao .cnc-row{display:flex;align-items:center;gap:13px;padding:12px 20px;border-top:1px solid var(--border)}
#screen-execucao .ctr-av{width:36px;height:36px;border-radius:10px;flex:none;display:grid;place-items:center;font-family:'Space Grotesk';font-weight:700;font-size:13px;color:#04121f}
#screen-execucao .ctr-main{flex:1;min-width:0}
#screen-execucao .ctr-name{font-size:13.5px;font-weight:600;display:flex;align-items:center;gap:8px}
#screen-execucao .ctr-tag{font-family:'JetBrains Mono',monospace;font-size:9.5px;font-weight:400;padding:2px 7px;border-radius:100px;background:rgba(90,168,255,.14);color:var(--blue)}
#screen-execucao .ctr-sub{font-size:11.5px;color:var(--muted);margin-top:2px;font-family:'JetBrains Mono',monospace}
#screen-execucao .ctr-perf{width:130px;flex:none}
#screen-execucao .ctr-xpbar{height:6px;border-radius:6px;background:var(--surface-3);overflow:hidden}
#screen-execucao .ctr-xpbar>i{display:block;height:100%;background:linear-gradient(90deg,var(--blue),var(--green))}
#screen-execucao .ctr-xp{display:block;font-family:'JetBrains Mono',monospace;font-size:10px;color:var(--muted);margin-top:4px;text-align:right}
#screen-execucao .ctr-score{width:44px;flex:none;text-align:center;font-family:'Space Grotesk';font-weight:700;font-size:18px;color:var(--green)}
#screen-execucao .cnc-role{font-family:'JetBrains Mono',monospace;font-size:9.5px;letter-spacing:.04em;text-transform:uppercase;padding:3px 9px;border-radius:100px;background:rgba(201,155,255,.16);color:#c99bff;flex:none}
#screen-execucao .ctr-empty{font-size:11.5px;color:var(--muted);padding:12px 20px;border-top:1px solid var(--border);font-style:italic}
@media(max-width:640px){#screen-execucao .ctr-perf{display:none}}

/* ---------- Cowork · Permissões & papéis ---------- */
#screen-execucao .perm-mgr{margin-top:20px;border:1px solid var(--border);border-radius:14px;background:var(--surface);overflow:hidden}
#screen-execucao .perm-head{padding:16px 18px;border-bottom:1px solid var(--border);background:var(--surface-2)}
#screen-execucao .perm-body{display:grid;grid-template-columns:290px 1fr}
#screen-execucao .perm-users{display:flex;flex-direction:column;border-right:1px solid var(--border);padding:8px}
#screen-execucao .perm-user{display:flex;align-items:center;gap:11px;padding:10px 12px;border:none;background:none;border-radius:10px;cursor:pointer;text-align:left;transition:background .15s}
#screen-execucao .perm-user:hover{background:var(--surface-2)}
#screen-execucao .perm-user.active{background:rgba(90,168,255,.1)}
#screen-execucao .perm-user .pu-av{width:34px;height:34px;border-radius:9px;flex:none;display:grid;place-items:center;font-family:'Space Grotesk';font-weight:700;font-size:14px;color:#04121f}
#screen-execucao .perm-user .pu-txt{flex:1;min-width:0}
#screen-execucao .perm-user .pu-txt b{font-size:13.5px;display:block}
#screen-execucao .perm-user .pu-txt span{font-size:11px;color:var(--muted);font-family:var(--font-mono)}
#screen-execucao .perm-user .pu-role{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.04em;text-transform:uppercase;padding:3px 8px;border-radius:100px;background:var(--surface-3);color:var(--text-2);flex:none}
#screen-execucao .perm-detail{padding:18px 20px}
#screen-execucao .perm-drow{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:20px;flex-wrap:wrap}
#screen-execucao .perm-dlabel{font-size:13px;font-weight:600}
#screen-execucao .perm-roles{display:flex;gap:2px;padding:3px;border:1px solid var(--border-2);border-radius:10px;background:var(--surface-2)}
#screen-execucao .perm-rbtn{font-family:inherit;font-size:12px;font-weight:600;padding:6px 13px;border:none;border-radius:7px;background:none;color:var(--muted);cursor:pointer;transition:.15s}
#screen-execucao .perm-rbtn.on{background:var(--blue);color:#04121f}
#screen-execucao .perm-seclabel{font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}
#screen-execucao .perm-toggles{display:flex;flex-direction:column;gap:2px}
#screen-execucao .perm-tg{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 0;border-bottom:1px solid var(--border);cursor:pointer}
#screen-execucao .perm-tg:last-child{border-bottom:none}
#screen-execucao .perm-tg b{font-size:13px;font-weight:600;display:block}
#screen-execucao .perm-tg small{font-size:11.5px;color:var(--muted)}
#screen-execucao .perm-sw{width:38px;height:22px;border-radius:100px;background:var(--surface-3);position:relative;flex:none;transition:background .15s}
#screen-execucao .perm-sw::after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .15s}
#screen-execucao .perm-sw.on{background:var(--blue)}
#screen-execucao .perm-sw.on::after{transform:translateX(16px)}
#screen-execucao .perm-sw.locked{opacity:.5;cursor:not-allowed}
@media(max-width:820px){#screen-execucao .perm-body{grid-template-columns:1fr}#screen-execucao .perm-users{border-right:none;border-bottom:1px solid var(--border)}}

/* ---------- Marketplace · tasks agrupadas por empresa ---------- */
#screen-marketplace .mkt-cogroup{border:1px solid var(--border);border-radius:16px;background:var(--surface);overflow:hidden}

/* toggle grelha/lista */
#screen-marketplace .mkt-filters-row{display:flex;align-items:center;justify-content:space-between;gap:16px}
#screen-marketplace .mkt-chips{display:flex;gap:8px;flex-wrap:wrap}
#screen-marketplace .mkt-view{display:flex;gap:2px;padding:3px;border:1px solid var(--border-2);border-radius:11px;background:var(--surface-2);flex:none}
#screen-marketplace .mkt-view-btn{width:34px;height:30px;display:grid;place-items:center;border:none;border-radius:8px;background:none;color:var(--muted);cursor:pointer;transition:.15s}
#screen-marketplace .mkt-view-btn:hover{color:var(--text)}
#screen-marketplace .mkt-view-btn.on{background:var(--surface);color:var(--text);box-shadow:0 1px 3px rgba(0,0,0,.2)}

/* modo lista */
#screen-marketplace .mkt-grid.is-list{grid-template-columns:1fr;gap:10px}
#screen-marketplace .mkt-grid.is-list .mkt-co{display:flex;align-items:center;gap:18px;padding:14px 20px 14px 16px;border-left:3px solid var(--blue)}
#screen-marketplace .mkt-grid.is-list .mkt-co-cover{display:none}
#screen-marketplace .mkt-grid.is-list .mkt-co-av{position:static;width:44px;height:44px;border-radius:12px;font-size:17px;flex:none;box-shadow:0 0 0 1px var(--border-2)}
#screen-marketplace .mkt-grid.is-list .mkt-co-body{padding:0;flex:1;min-width:0;display:grid;grid-template-columns:1.6fr 1.4fr auto;align-items:center;gap:24px}
#screen-marketplace .mkt-grid.is-list .mkt-co-nm{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#screen-marketplace .mkt-grid.is-list .mkt-co-desc{margin:0}
#screen-marketplace .mkt-grid.is-list .mkt-prog{margin:0 0 5px}
#screen-marketplace .mkt-grid.is-list .mkt-co-stats{margin:0;grid-template-columns:repeat(3,minmax(56px,auto));gap:20px}
#screen-marketplace .mkt-grid.is-list .mkt-co-nm,
#screen-marketplace .mkt-grid.is-list .mkt-co-desc{grid-column:auto}
/* nome+desc ficam na 1ª coluna empilhados */
#screen-marketplace .mkt-grid.is-list .mkt-co-body>.mkt-co-nm{grid-row:1;grid-column:1}
#screen-marketplace .mkt-grid.is-list .mkt-co-body>.mkt-co-desc{grid-row:2;grid-column:1;font-size:11.5px}
#screen-marketplace .mkt-grid.is-list .mkt-co-body>.mkt-prog{grid-row:1;grid-column:2}
#screen-marketplace .mkt-grid.is-list .mkt-co-body>.mkt-pbar{grid-row:2;grid-column:2;align-self:start;margin-top:2px}
#screen-marketplace .mkt-grid.is-list .mkt-co-body>.mkt-co-stats{grid-row:1/3;grid-column:3}
@media(max-width:820px){
  #screen-marketplace .mkt-grid.is-list .mkt-co-body{grid-template-columns:1fr}
  #screen-marketplace .mkt-grid.is-list .mkt-co-body>*{grid-column:1!important}
  #screen-marketplace .mkt-grid.is-list .mkt-co-body>.mkt-co-stats{grid-row:auto}
}
#screen-marketplace .mkt-cogroup + .mkt-cogroup{margin-top:16px}
#screen-marketplace .mcg-head{display:flex;align-items:center;gap:13px;padding:16px 18px;border-bottom:1px solid var(--border);background:var(--surface-2)}
#screen-marketplace .mcg-logo{width:40px;height:40px;border-radius:11px;flex:none;display:grid;place-items:center;font-family:'Space Grotesk';font-weight:800;font-size:17px;color:#04121f}
#screen-marketplace .mcg-txt{flex:1;min-width:0}
#screen-marketplace .mcg-name{font-family:'Space Grotesk';font-weight:700;font-size:15px;display:flex;align-items:center;gap:8px}
#screen-marketplace .mcg-sym{font-family:'JetBrains Mono',monospace;font-size:11px;font-weight:400;color:var(--muted)}
#screen-marketplace .mcg-meta{font-size:12px;color:var(--muted);font-family:'JetBrains Mono',monospace;margin-top:2px}
#screen-marketplace .mcg-count{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--muted);background:var(--surface-3);border-radius:100px;padding:4px 11px;flex:none}
#screen-marketplace .mcg-head{cursor:pointer;transition:background .15s}
#screen-marketplace .mcg-head:hover{background:var(--surface-3)}
#screen-marketplace .mcg-toggle{width:32px;height:32px;flex:none;display:grid;place-items:center;border:1px solid var(--border-2);border-radius:9px;background:var(--surface);color:var(--muted);cursor:pointer;transition:transform .2s,color .15s,border-color .15s}
#screen-marketplace .mcg-toggle:hover{color:var(--text);border-color:var(--muted)}
#screen-marketplace .mkt-cogroup.collapsed .mcg-toggle{transform:rotate(-90deg)}
#screen-marketplace .mkt-cogroup.collapsed .mcg-head{border-bottom:none}
#screen-marketplace .mkt-cogroup.collapsed .mkt-tasklist{display:none}
#screen-marketplace .mkt-tasklist{display:flex;flex-direction:column}
#screen-marketplace .mkt-tasklist .mkt-task{border:none;border-radius:0;border-bottom:1px solid var(--border);background:transparent}
#screen-marketplace .mkt-tasklist .mkt-task:last-child{border-bottom:none}
#screen-marketplace .mkt-tasklist .mkt-task:hover{background:var(--surface-2)}

/* barra superior fica sempre por cima; o painel direito passa por baixo dela */
.topbar{z-index:60}
.sb-sw-empty{font-size:12.5px;color:var(--muted);padding:10px 10px 6px;line-height:1.4}

/* landing embebida no app */
#landing-overlay{position:fixed;inset:0;z-index:2000;background:var(--bg);display:none}
#landing-overlay.open{display:block}
#landing-frame{width:100%;height:100%;border:0;display:block}
#landing-close{position:fixed;top:16px;left:16px;z-index:2010;display:inline-flex;align-items:center;gap:7px;font-family:var(--font-body);font-size:13px;font-weight:600;color:var(--text);background:rgba(14,16,19,.85);backdrop-filter:blur(10px);border:1px solid var(--border-2);border-radius:10px;padding:9px 14px;cursor:pointer;transition:.15s}
#landing-close:hover{border-color:rgba(255,255,255,.3)}
#landing-close svg{width:15px;height:15px}

/* ---------- SmartCompany igual ao botão de utilizador do rodapé ---------- */
.app:not(.sb-collapsed) .sb-company{
  margin:2px 0 4px;width:100%;padding:6px;border-radius:13px;
  background:var(--surface-2);border:1px solid var(--border);
}
.app:not(.sb-collapsed) .sb-company .sc-row{gap:11px;padding:8px 10px}
.app:not(.sb-collapsed) .sb-company .sc-logo{width:34px;height:34px;border-radius:9px;font-size:14px}
.app:not(.sb-collapsed) .sb-company .sc-name{font-size:13.5px;line-height:1.25}
.app:not(.sb-collapsed) .sb-company .sc-meta{font-size:11px;line-height:1.3}
.app:not(.sb-collapsed) .sb-company .sc-chev{color:var(--muted);flex:none}
