:root{--bg:#090c11;--panel:#11161e;--panel-2:#161d27;--line:#293241;--text:#f3f5f7;--muted:#a3afbd;--gold:#c9a25c;--gold-2:#ecd39c;--green:#58c19a;--danger:#ea7777;--shadow:0 24px 65px rgba(0,0,0,.28)}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 75% -15%,#293142 0,transparent 35%),var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;min-height:100vh}button,input,textarea,select{font:inherit}.login-shell{display:grid;min-height:100vh;grid-template-columns:minmax(380px,1fr) minmax(460px,1.35fr)}.login-panel{display:flex;align-items:center;justify-content:center;padding:42px;background:linear-gradient(160deg,#101722,#090c11)}.login-card{width:min(420px,100%)}.brand-logo{width:210px;height:auto;margin-bottom:52px}.eyebrow{display:block;color:var(--gold-2);font-size:.7rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;margin-bottom:12px}.login-card h1{font-size:2.25rem;letter-spacing:-.045em;line-height:1.04;margin:0 0 16px}.login-card p{color:var(--muted);line-height:1.6;margin:0 0 28px}.form-group{display:grid;gap:8px;margin:16px 0}.form-group label{color:#dce2e8;font-size:.86rem;font-weight:600}.field{background:#0c1118;border:1px solid #2a3443;border-radius:10px;color:#fff;outline:0;padding:13px 14px;width:100%}.field:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,162,92,.13)}.login-visual{padding:7vw;display:flex;align-items:flex-end;min-height:100%;background:linear-gradient(140deg,rgba(201,162,92,.12),transparent 45%),url('./assets/simbolo-fundo-escuro.svg') right 8% top 15%/500px no-repeat}.login-visual h2{max-width:680px;margin:0;font-size:clamp(2.6rem,5vw,5.5rem);line-height:.98;letter-spacing:-.065em}.login-visual h2 em{color:var(--gold-2);font-style:normal}.btn{border:0;border-radius:9px;cursor:pointer;font-weight:750;padding:12px 16px;transition:.18s ease}.btn:hover{transform:translateY(-1px)}.btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.btn-primary{background:linear-gradient(135deg,#e2c682,#b8893d);color:#16120a}.btn-full{width:100%}.btn-secondary{background:#1b2430;border:1px solid #303d4e;color:#fff}.btn-ghost{background:transparent;color:#c7d0da;border:1px solid #303d4e;padding:9px 12px}.fine-print{font-size:.78rem;color:#748293;margin-top:16px}.app-shell{display:grid;grid-template-columns:255px 1fr;min-height:100vh}.sidebar{border-right:1px solid var(--line);padding:28px 16px;background:rgba(8,11,16,.72);display:flex;flex-direction:column}.sidebar .brand-logo{width:185px;margin:8px 10px 46px}.nav{display:grid;gap:5px}.nav-item{display:flex;align-items:center;gap:11px;border:0;background:transparent;border-radius:8px;color:#91a0b1;padding:12px 12px;text-align:left;cursor:pointer;font-weight:650}.nav-item.active,.nav-item:hover{background:#18202b;color:#fff}.nav-icon{color:var(--gold);font-size:1rem;width:18px}.sidebar-footer{margin-top:auto;padding:16px 10px 3px;border-top:1px solid var(--line)}.user-name{font-weight:700;font-size:.88rem}.user-email{color:#7e8b99;font-size:.76rem;margin:3px 0 13px;overflow:hidden;text-overflow:ellipsis}.main{min-width:0}.topbar{height:85px;display:flex;align-items:center;justify-content:space-between;padding:0 40px;border-bottom:1px solid var(--line);background:rgba(10,13,18,.65);backdrop-filter:blur(12px);position:sticky;top:0;z-index:5}.topbar-title{font-weight:760;font-size:1.05rem}.breadcrumb{color:#8290a0;font-size:.78rem;margin-top:4px}.main-content{padding:40px;max-width:1500px;margin:auto}.page-heading{display:flex;gap:25px;justify-content:space-between;align-items:flex-end;margin-bottom:28px}.page-heading h1{font-size:2rem;letter-spacing:-.045em;margin:0}.page-heading p{color:var(--muted);margin:8px 0 0;line-height:1.45}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:0 0 32px}.stat{background:linear-gradient(145deg,#151c26,#10151d);border:1px solid #253141;border-radius:12px;padding:21px}.stat span{display:block;color:#8c99a8;font-size:.76rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.stat strong{display:block;font-size:1.95rem;letter-spacing:-.04em;margin-top:10px}.section-title{font-size:1rem;margin:0}.section-head{display:flex;justify-content:space-between;align-items:center;margin:0 0 14px}.company-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:15px}.company-card,.project-card{background:linear-gradient(150deg,#151c26,#10161e);border:1px solid #263243;border-radius:12px;padding:20px;box-shadow:var(--shadow)}.company-card{cursor:pointer;min-height:170px}.company-card:hover{border-color:#a8864d;transform:translateY(-2px)}.company-card h3,.project-card h3{font-size:1.05rem;margin:12px 0 8px;letter-spacing:-.02em}.meta{color:#8f9dab;font-size:.82rem}.badge{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:999px;background:#212b38;color:#cbd5df;font-size:.7rem;font-weight:750;text-transform:uppercase;letter-spacing:.045em}.badge.gold{background:rgba(201,162,92,.14);color:#e8cc92}.badge.green{background:rgba(88,193,154,.12);color:#91ddb9}.empty{border:1px dashed #3a485a;border-radius:12px;padding:35px;min-height:170px;color:#a7b4c1;background:rgba(19,25,34,.55)}.empty h3{color:#fff;margin:0 0 8px}.empty p{margin:0 0 17px;line-height:1.5}.project-layout{display:grid;grid-template-columns:minmax(250px,.83fr) minmax(420px,2fr);gap:24px}.phase-card{padding:22px;background:#111821;border:1px solid #273345;border-radius:12px}.phase-list{display:grid;gap:8px;margin-top:18px}.phase{display:flex;gap:10px;padding:12px;border-radius:8px;color:#8190a0;font-size:.87rem}.phase.active{background:rgba(201,162,92,.12);color:#f4e0b2}.phase-number{color:var(--gold);font-weight:800}.detail-panel{display:grid;gap:22px}.info-panel{background:#111821;border:1px solid #273345;border-radius:12px;padding:24px}.info-panel h2{margin:0 0 8px;font-size:1.32rem;letter-spacing:-.035em}.info-panel p{color:var(--muted);line-height:1.55}.diagnostic-row{display:flex;align-items:center;justify-content:space-between;padding:15px 0;border-top:1px solid #273345;gap:14px}.diagnostic-row:first-of-type{border-top:0}.diagnostic-row h4{margin:0 0 5px}.modal-backdrop{position:fixed;inset:0;background:rgba(2,5,8,.76);display:grid;place-items:center;padding:20px;z-index:20}.modal{width:min(600px,100%);max-height:90vh;overflow:auto;background:#121923;border:1px solid #344154;border-radius:14px;box-shadow:0 30px 80px rgba(0,0,0,.5);padding:25px}.modal h2{margin:0 0 7px;font-size:1.38rem}.modal p{color:var(--muted);margin:0 0 19px;line-height:1.45}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.alert{padding:12px 14px;border-radius:9px;margin:0 0 18px;font-size:.84rem;line-height:1.45}.alert.warning{background:rgba(201,162,92,.12);border:1px solid rgba(201,162,92,.3);color:#edd9aa}.alert.error{background:rgba(234,119,119,.12);border:1px solid rgba(234,119,119,.3);color:#ffc1c1}.loading{padding:45px;color:#aab5c1;text-align:center}.toast-region{position:fixed;right:22px;bottom:22px;z-index:40;display:grid;gap:9px}.toast{background:#e9eff4;color:#10141a;border-radius:9px;padding:13px 16px;box-shadow:var(--shadow);font-weight:650;font-size:.85rem}.toast.error{background:#522d31;color:#ffd8d8}.hidden{display:none!important}@media(max-width:850px){.login-shell,.app-shell{grid-template-columns:1fr}.login-visual{display:none}.sidebar{position:fixed;z-index:15;left:0;top:0;bottom:0;width:245px;transform:translateX(-100%);transition:.2s}.sidebar.open{transform:translateX(0)}.topbar{padding:0 18px}.main-content{padding:25px 18px}.stats{grid-template-columns:1fr}.project-layout{grid-template-columns:1fr}.mobile-menu{display:block!important}.page-heading{align-items:flex-start;flex-direction:column;gap:15px}}@media(min-width:851px){.mobile-menu{display:none!important}}
