/* BAStudio / The business analyst's complete workspace: refreshed presentation layer. */
:root{--navy:#0b1a3e;--dark:#0c2151;--blue:#425fea;--blue2:#7163f8;--ink:#17294c;--muted:#6f7f9a;--line:#e1e8f5;--bg:#f6f8ff;--shadow:0 14px 37px rgba(21,39,100,.065);--radius:18px}
html,body{font-family:'Cairo','Segoe UI',Tahoma,Arial,sans-serif}
.login{background:radial-gradient(ellipse at 90% 5%,#363cb0 0%,transparent 39%),radial-gradient(ellipse at 12% 94%,#176fa366 0%,transparent 43%),linear-gradient(145deg,#071631,#101c4e 62%,#1b225f)}
.login:before{background-image:linear-gradient(#ffffff08 1px,transparent 1px),linear-gradient(90deg,#ffffff08 1px,transparent 1px);background-size:47px 47px;opacity:.8}
.login:after{content:'';position:absolute;width:min(100vw,990px);height:990px;top:-420px;left:-240px;border:1px solid #bdc5ff18;border-radius:50%;pointer-events:none}
.loginCard{width:min(1040px,96vw);min-height:535px;grid-template-columns:minmax(0,1.14fr) 385px;border:1px solid #ffffff70;border-radius:28px;box-shadow:0 40px 100px #02082488,0 0 90px #596ff51a}
.loginBrandPanel{position:relative;isolation:isolate;background:radial-gradient(ellipse at 8% 95%,#3a4dbcaa,transparent 52%),linear-gradient(145deg,#152e6c,#0b1a42 79%);border-left:1px solid #ffffff24;padding:35px 37px;color:#fff;overflow:hidden}
.loginBrandPanel:before{content:'';z-index:-1;position:absolute;left:-90px;bottom:-180px;width:450px;height:450px;border-radius:50%;border:1px solid #a9c2ff30;box-shadow:0 0 0 60px #6978d408,0 0 0 122px #a0a6ff07}
.loginBrandPanel:after{content:'BA';position:absolute;z-index:-1;left:22px;bottom:78px;font:900 160px/1 Arial,sans-serif;letter-spacing:-24px;color:#ffffff0d;transform:skewX(-8deg)}
.loginBrandPanel .loginBrand h1,.loginBrandPanel .loginBrand p,.loginBrandPanel .loginContent h2{color:#fff}
.loginBrandPanel .loginBrand h1{font-size:28px}.loginBrandPanel .logo{background:linear-gradient(140deg,#74dbff,#5d6aff 48%,#ae6cff);box-shadow:inset 0 2px 0 #ffffff66,0 16px 34px #344ac484}
.loginBrandPanel .loginContent .eyebrow{color:#aebfff;font-size:11px}
.loginBrandPanel .loginContent h2{font-size:29px;line-height:1.65;max-width:550px;text-shadow:0 10px 32px #06113444}
.loginBrandPanel .loginContent p{color:#c6d2f3;font-size:14px;line-height:2}
.loginBrandPanel .mini-steps span{background:#ffffff14;color:#eef4ff;border:1px solid #a1b3ff3b;border-radius:12px;font-size:11px;padding:8px 12px}
.loginBrandPanel .mini-steps i{color:#829ad0}.loginPanelFoot{color:#a9bbdc;border-color:#ffffff2e}
.loginForm{padding:42px 36px;background:radial-gradient(circle at 97% 1%,#f6f8ff,#fff 52%)}.loginForm .in-form .logo{background:linear-gradient(135deg,#435de2,#8565f8);box-shadow:0 9px 22px #5868f155}
.loginForm .in-form h1{font-size:23px}.loginForm h2{font-size:23px;font-weight:900}.loginForm>p{font-size:13px}
.loginForm .field label{font-size:12.5px}.loginForm .field input{height:50px;background:#fbfcff;border-color:#dbe4f4;font-weight:700}.loginMeta{font-size:11px}.login-submit{min-height:48px;border-radius:12px}.back-home{font-size:11.5px}
/* Global shell */
.appShell{background:radial-gradient(ellipse 900px 400px at 17% 5%,#eaf0ff 0%,transparent 76%),#f5f7fd}
.sidebar{width:250px;flex-basis:250px;padding:18px 14px;background:radial-gradient(ellipse at 7% 95%,#3238a13b,transparent 56%),linear-gradient(170deg,#091837,#0b2453 77%,#111f4b)}
.companyHome{height:64px;border-radius:13px;box-shadow:0 6px 20px #06143122}.productIdentity{padding:20px 6px}.sideLogo{width:44px;height:44px;border-radius:15px;background:linear-gradient(140deg,#537dfb,#9e67ee);box-shadow:inset 0 1px 0 #ffffff88,0 8px 20px #4667ed4d}.productIdentity strong{font-size:17px}.productIdentity small{font-size:11px}.sideCaption{color:#8ba8e5;font-size:11px}.sideLink{min-height:45px;font-size:12.5px;border-radius:12px;padding:11px 12px}.sideLink.active{background:linear-gradient(105deg,#3a55b5,#6254d6);box-shadow:inset 0 1px 0 #ffffff30,0 7px 19px #07163d44}
.context-name{padding:15px 12px;background:#ffffff08}.context-name strong{font-size:11px}.context-name small{line-height:1.8}
.topbar{height:72px;border-color:#e5eafa;box-shadow:0 2px 9px #12245204}.content{max-width:1650px;padding:31px clamp(21px,3vw,49px) 80px}.breadcrumbs,.crumbButton{font-size:12px}.user-tag{font-size:11px;background:#eef2ff}
/* Clearly separated hierarchy, with spacious reading rhythm */
.pageHead{padding:5px 0 11px;margin-bottom:19px;border-bottom:1px solid #e7edfa}.pageHead h1{font-size:clamp(25px,2.5vw,34px);color:#15264a;line-height:1.4}.pageHead p{font-size:12.5px;line-height:1.95}.kicker{letter-spacing:.65px;font-size:10.5px;color:#4c67da}.primary,.btn,.subtleBtn{min-height:41px;border-radius:11px;font-size:12px;padding:10px 17px}.primary{background:linear-gradient(117deg,#3d5edc,#765ff2);box-shadow:0 10px 22px #445ce330}.btn{border-color:#d5dff3}.subtleBtn{background:#eef2ff}
.panel{border-radius:19px;border-color:#e2e8f6;box-shadow:0 14px 38px #132b6a0b,0 2px 5px #21355805;overflow:hidden}.panelHead{min-height:72px;padding:18px 22px;background:linear-gradient(140deg,#fff,#fbfcff)}.panelHead h2{font-size:15px;font-weight:900;color:#172b51}.panelHead p{font-size:11.5px}.panelBody{padding:23px 24px}.stats{gap:13px;margin-bottom:17px}.stat{min-height:121px;border-radius:17px;padding:17px 21px;background:#fff;position:relative;overflow:hidden}.stat:before{content:'';position:absolute;inset:0 auto auto 0;width:80px;height:80px;border-radius:50%;transform:translate(-38px,-40px);background:radial-gradient(circle,#e1e9ff 0%,transparent 70%)}.stat .stLabel{font-size:11.5px}.stat strong{font-size:27px;color:#223a76}.stat small{font-size:10.5px}
.solutionCatalog{gap:13px}.solutionCatalog:has(.solutionTile:only-child){grid-template-columns:minmax(0,1fr)}
.solutionTile{border-radius:19px;padding:21px;min-height:205px;border-color:#e0e7f8;background:linear-gradient(135deg,#fff,#f9faff);box-shadow:0 6px 14px #173b9208;position:relative;overflow:hidden}
.solutionTile:before{content:'';position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(180deg,#557cfb,#8663ed);border-radius:20px 0 0 20px}.solutionTile .projectMark{width:55px;height:53px;border-radius:16px;background:linear-gradient(135deg,#476aea,#8467f0);box-shadow:inset 0 1px 0 #ffffff44,0 12px 25px #5977eb33}
.solutionTile h3{font-size:18px;color:#1c3158}.solutionTile>p{font-size:12px}.solutionTile .cardFooter{padding-top:13px}.solutionTile .miniTag{padding:5px 10px}.solutionTile .idPill{font-size:10px}.solutionTile:hover{transform:translateY(-3px);box-shadow:0 19px 38px #1e44b01a}
.workspaceHint{background:linear-gradient(105deg,#f1f5ff,#fafbff);border:1px solid #e1e7f7;border-radius:16px}.workspaceHint strong{color:#2e4dc1;font-size:13px}.workspaceHint p{font-size:12px}
.gridAside{gap:17px}.table thead{background:#f7f9ff}.table th{font-size:11px;color:#58709c}.table td{font-size:11.5px}.tableTitle{font-size:12px}.table tr:hover td{background:#fcfdff}.filterTab{padding:9px 11px}.filterTab.active{background:#eaf0ff;border-color:#d1dcff;color:#3652c0}.searchField{min-height:41px;background:#fafdff}.tabs{border:1px solid #e1e9f7;border-radius:15px;background:#fff;min-height:54px}.tabs .tab{min-height:41px;font-size:11.5px}.tabs .tab.active{background:#eef3ff;color:#3657c4}
.reqHero{background:radial-gradient(circle at 3% 3%,#ebf0ff,transparent 33%),#fff;border-color:#dbe4f5}.reqHero h1{font-size:25px}.reqHero p{font-size:12px;line-height:1.8}.reqMeta small{font-size:11px}.reqMeta b{font-size:12px}
.recordGrid{gap:13px}.record{border-radius:15px;border-color:#e2e8f7;border-right:3px solid #b7c7fa;padding:18px}.record:hover{border-color:#abc0fc;border-right-color:#6975e7;box-shadow:0 8px 20px #2a49b509}.record h3{font-size:13px}.record p{font-size:11.5px;line-height:1.9}.recordFooter small{font-size:10.5px}.bpButton{font-size:11px;border-radius:10px}.bpButton.active{background:#e9eeff}
.docRow{border-radius:15px;border-color:#e0e8f7;padding:16px 17px}.docRow:hover{border-color:#b9cafa;background:#fcfdff}.docMeta h3{font-size:12.5px}.docMeta p{font-size:10.5px}.docIcon{background:linear-gradient(140deg,#e9f0ff,#eff0ff);color:#3f5ec8}.fileBtn{font-size:11px;min-height:35px;border-radius:10px;padding-inline:12px}.versionRow{grid-template-columns:116px 1fr 155px 128px}
/* Presenter's journey: filled inputs, clear stages, no typing required */
.wizardLayout{grid-template-columns:minmax(0,1.52fr) minmax(270px,.8fr);gap:16px}.stepper{margin-bottom:14px;gap:9px}.wizardStep{font-size:11px;min-height:53px;border-color:#e1e7f7;border-radius:13px}.wizardStep.active{background:linear-gradient(135deg,#eef2ff,#f7f6ff);border-color:#adbef9;box-shadow:0 5px 18px #4569f511}.wizardStep.active span{background:linear-gradient(135deg,#4164e5,#7763f3)}
.formGrid{gap:17px}.field label{font-size:12px}.field input,.field select,.field textarea{background:#fbfcff;border-color:#dbe3f3;border-radius:12px;min-height:45px;font-size:12px;font-weight:700;padding:11px 13px}.field textarea{min-height:105px;line-height:2.05}.field input:focus,.field textarea:focus{background:#fff;box-shadow:0 0 0 4px #5d73f515}.fieldHelp{color:#71819e;font-size:11px}.wizardBottom{padding-top:18px}.wizardBottom .primary{min-width:145px}.notice{font-size:11.5px;border-radius:12px}.notice.success{background:#eef9f4;border-color:#c3ead9;color:#17765b}.checkItem{min-height:46px;font-size:11.5px;border-radius:11px}.checkItem:has(input:checked){background:#f3f6ff}
.progressBar{height:12px}.progressFill{background:linear-gradient(100deg,#3d65ee,#5d91f1,#9663f6)}.modal{border:1px solid #cddaf8;border-radius:20px}.modalBody{padding:25px 28px}.processStep{font-size:12px}.processStep b{width:26px;height:26px}
@media(max-width:1190px){.wizardLayout{grid-template-columns:minmax(0,1fr) minmax(250px,.7fr)}}
@media(max-width:900px){.sidebar{right:0;width:250px}.content{padding:23px 16px 70px}.gridAside,.twoCols,.wizardLayout{grid-template-columns:1fr}.solutionCatalog{grid-template-columns:1fr}.loginCard{grid-template-columns:1fr;max-width:470px}.loginBrandPanel{display:none}.pageHead{gap:11px}.stat{min-height:100px}}
@media(max-width:600px){.loginForm{padding:28px 23px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.stat{padding:12px}.stat strong{font-size:24px}.solutionTile{padding:17px;min-height:180px}.panelBody{padding:18px}.pageHead h1{font-size:23px}.topbar{height:60px}.recordGrid,.formGrid{grid-template-columns:1fr}}
