/* UI-151: approved white corporate presentation. Runtime policies are unchanged. */
:root{--paper:#fff;--white:#fff;--navy:#172b46;--navy2:#172b46;--navy3:#edf3fa;--orange:#0550a0;--orange-dark:#03417f;--orange-soft:#edf4fc;--ink:#172b46;--muted:#4a5f7a;--muted2:#5b6e87;--line:#dce5ef;--blue:#0089c2;--blue-soft:#f0f8fc}
html,body{background:#fff;color:var(--ink)}
button,input,select,textarea{font:inherit}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #0550a0;outline-offset:3px}
input,textarea,select{accent-color:#0550a0}
.corporate-brand{display:flex;align-items:center;gap:10px;color:var(--ink);font-size:15px;font-weight:750;line-height:1.25}
.corporate-brand img,.brand-symbol{display:block;object-fit:contain;flex:none;height:auto}
.login-page{min-height:100vh;min-height:100dvh;display:grid;grid-template-columns:46% 54%;place-items:stretch;padding:0;background:#fff}
.login-brand-panel{position:relative;isolation:isolate;min-height:100vh;min-height:100dvh;overflow:hidden;display:flex;flex-direction:column;padding:48px 9%;background:#f5f8fc}
.login-brand-panel::before{content:"";position:absolute;z-index:-1;inset:-12% -32%;background:url('/assets/sie-simbolo.png') center/cover no-repeat;opacity:.035;pointer-events:none}
.login-hero{width:100%;margin:auto 0;display:flex;flex-direction:column;align-items:center;text-align:center;gap:22px;padding:60px 0}
.login-hero-symbol{width:108px;height:auto;max-width:28%}
.login-hero h1{margin:4px 0 0;font-size:clamp(40px,4.8vw,72px);font-weight:800;line-height:1.04;letter-spacing:-.045em;white-space:nowrap}
.login-product-area{display:flex;align-items:center;gap:12px;font-size:12px;letter-spacing:.2em;font-weight:800;text-transform:none;color:#007fab;white-space:nowrap}
.login-product-area::before,.login-product-area::after{content:"";width:30px;height:2px;background:currentColor}
.login-hero p{max-width:380px;margin:12px 0 0;color:var(--muted);font-size:19px;line-height:1.55}
.login-card{position:relative;align-self:stretch;justify-self:stretch;width:auto;padding:32px 48px 48px;border:0;border-radius:0;background:#fff;box-shadow:none;display:flex;flex-direction:column;gap:36px;min-width:0}
.login-topline{display:flex;align-items:center;justify-content:flex-end;gap:12px;min-height:46px}
.login-compact-brand{display:none}
.login-fields{width:min(420px,100%);margin:auto;display:grid;gap:24px;padding:48px 0}
.login-fields .eyebrow{font-family:inherit;font-size:12px;font-weight:800;color:#007fab;letter-spacing:.16em;text-transform:none}
.login-fields h2{margin:12px 0 0;font-size:34px;line-height:1.15;letter-spacing:-.03em}
.login-fields>div>p{margin-top:12px;font-size:14px}
.login-form{gap:20px}
.login-form label{gap:8px;font-size:14px;color:var(--ink)}
.login-form input{width:100%;min-width:0;height:50px;border:1px solid #c5d3e3;border-radius:10px;padding:12px 14px;color:var(--ink);background:#fff;font-size:16px}
.login-form input:focus{border-color:#0550a0;box-shadow:0 0 0 3px #e8f0fa}
.login-form .button{height:52px;font-size:16px;margin-top:0}
.password-control{position:relative;display:block;min-width:0}
.password-control input{padding-right:104px}
.password-toggle{position:absolute;right:6px;top:6px;min-width:84px;height:38px;padding:0 10px;border:0;border-radius:7px;background:#eef3f9;color:var(--ink);font-size:13px;font-weight:700}
.login-security-note{font-size:12px!important;color:var(--muted);line-height:1.5}
.login-fields .legal-note{font-size:11px!important;line-height:1.6}
.button-primary{background:#0550a0;border-color:#0550a0;box-shadow:none}
.button-primary:hover:not(:disabled){background:#03417f;border-color:#03417f}
.button-dark{background:#fff;color:var(--ink);border-color:#c5d3e3}
.factory-header,.mission-nav{background:#fff;color:var(--ink);border-color:var(--line)}
.factory-header{border-bottom:1px solid var(--line)}
.mission-nav{border-right:1px solid var(--line)}
.brand-inline{gap:10px;min-width:180px}
.brand-inline strong{font-size:16px;letter-spacing:-.02em}
.brand-inline small,.portfolio-link small{color:var(--muted);line-height:1.4}
.brand-inline .corporate-name,.portfolio-link .corporate-name{font-size:10px;letter-spacing:0;color:var(--ink)}
.portfolio-link{color:var(--ink)}
.scope-chip{border-color:var(--line);background:#f5f8fc}
.scope-chip span,.owner small,.mission-owner small{color:var(--muted)}
.top-action,.logout{border-color:#c5d3e3;color:var(--ink);background:#fff}
.owner-avatar{color:#0550a0;background:#edf4fc;border-color:#dce5ef}
.owner-avatar.orange{background:#0550a0;border-color:#0550a0}
.hand,.hand-light{font-family:inherit;font-size:12px!important;line-height:1.4;letter-spacing:.07em;text-transform:uppercase;font-weight:750;color:#0550a0}
.area-nav{color:var(--muted);font-size:13px}
.area-nav span{color:var(--muted)}
.area-nav:hover,.area-nav.active{background:#e8f0fa;color:#0550a0}
.area-nav.active span{color:#0550a0}
.phase-box{background:#f5f8fc;border:1px solid var(--line);color:var(--ink)}
.phase-box small,.phase-box span,.nav-label{color:var(--muted)}
.dark-card,.summary-dark,.cfo-hero{background:#fff;color:var(--ink);border:1px solid var(--line);box-shadow:0 1px 2px rgba(23,43,70,.04)}
.factory-health p,.summary-dark p,.cfo-hero p{color:var(--muted)}
.health-stats>div,.health-row,.area-health-row{border-color:var(--line)}
.health-stats span,.micro-label,.health-row small,.health-row em,.area-health-row span{color:var(--muted)}
.health-row em{border-color:var(--line);background:#f5f8fc}
.project-card.clickable:hover{border-color:#0550a0;box-shadow:0 6px 20px rgba(23,43,70,.08)}
.thread-children span{background:#edf4fc;color:#0550a0;border:1px solid #dce5ef}
.truth-banner{border-color:#c9dcef;background:#f5f8fc}
.factory-header .language-trigger,.mission-topbar .language-trigger{background:#fff;color:var(--ink);border-color:#c5d3e3}
.language-trigger{min-height:44px;min-width:110px;gap:9px;font-size:13px}
.language-option{min-height:44px;font-size:13px}
.language-option:hover,.language-option.selected{background:#edf4fc}
.language-option.selected{color:#0550a0}
.language-trigger:focus-visible,.language-option:focus-visible{outline-color:#0550a0}
.language-active-name{font-weight:650}
@media(min-width:1500px){.login-brand-panel{padding-left:12%;padding-right:12%}}
@media(max-width:1050px){.login-brand-panel{padding:36px 7%}.login-card{padding-left:32px;padding-right:32px}.login-hero p{font-size:17px}.owner small{max-width:160px}}
@media(max-width:959px){.login-page{display:block}.login-brand-panel{display:none}.login-card{min-height:100vh;min-height:100dvh;padding:24px 28px 36px;gap:24px}.login-compact-brand{display:flex}.login-topline{justify-content:space-between}.login-fields{padding:40px 0;margin:auto}.factory-header .brand-inline{min-width:0}.mission-nav .brand-symbol{width:30px}}
@media(max-width:520px){.login-card{padding:20px 18px 28px}.login-topline{gap:8px}.corporate-brand{gap:8px;font-size:13px}.login-compact-brand img{width:26px}.login-topline .language-trigger{min-width:104px;padding:6px 8px}.login-topline .language-flag{display:none}.login-fields{padding:24px 0;gap:22px}.login-fields h2{font-size:30px}.factory-header{gap:10px;padding:12px 16px}.owner{margin-left:auto}.login-fields .button{min-height:52px}}
