@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap');
:root{--n:#0b1734;--b:#2463ad;--bg:#f4f7fb;--s:#fff;--m:#71809a;--l:#e2e9f2;--p:#eaf3ff;--g:#168b70;--a:#b97623;--r:#c94f5a}*{box-sizing:border-box}body{margin:0;background:var(--bg);font:13px 'Plus Jakarta Sans',sans-serif;color:#14223d}button,input,select,textarea{font:inherit}button{cursor:pointer}.top{height:65px;background:#ffffffed;border-bottom:1px solid var(--l);display:flex;align-items:center;gap:30px;padding:0 4%;position:sticky;top:0;z-index:9}.brand{font-size:18px;font-weight:800;color:var(--n);letter-spacing:-.5px;white-space:nowrap}.brand i{display:inline-grid;place-items:center;background:var(--n);color:white;border-radius:7px;width:25px;height:25px;font-style:normal;margin-right:8px}.nav{display:flex;gap:22px;flex:1}.nav button,.plain{border:0;background:none;color:var(--m);font-weight:700}.nav button.active{color:var(--b);border-bottom:2px solid var(--b);padding-bottom:9px}.btn{border:1px solid transparent;border-radius:9px;padding:10px 14px;font-weight:700}.primary{background:var(--b);color:white}.secondary{background:white;border-color:#d8e2ef;color:var(--n)}.soft{background:var(--p);color:var(--b)}.small{padding:7px 10px;font-size:10px}.shell{max-width:1400px;margin:auto;padding:25px 4% 45px}.hero{display:grid;grid-template-columns:1.04fr .96fr;background:white;border:1px solid var(--l);border-radius:18px;overflow:hidden;min-height:310px}.hero-copy{padding:42px 36px}.eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:1.4px;color:var(--b);font-weight:800;margin-bottom:13px}.hero h1{font-size:clamp(34px,4.2vw,51px);letter-spacing:-2px;line-height:1.1;color:var(--n);margin:0 0 16px}.hero p{color:var(--m);line-height:1.8;max-width:440px;margin:0 0 22px}.art{position:relative;overflow:hidden;background:linear-gradient(145deg,#e5f2ff,#83b5e5 65%,#4779ad);min-height:270px}.art:before{content:"";position:absolute;inset:auto -10% -2px;height:72%;background:#d8eafa;clip-path:polygon(0 70%,17% 34%,28% 59%,47% 6%,61% 48%,77% 21%,100% 70%,100% 100%,0 100%)}.art:after{content:"";position:absolute;inset:auto -10% -2px;height:48%;background:#6898ca;clip-path:polygon(0 70%,20% 24%,35% 58%,57% 4%,74% 53%,88% 27%,100% 60%,100% 100%,0 100%)}.quote{position:absolute;right:8%;top:17%;color:white;font-weight:800;font-style:italic;transform:rotate(-7deg);z-index:2}.person{position:absolute;z-index:3;width:120px;height:190px;right:26%;bottom:0}.person:before{content:"";position:absolute;top:15px;left:42px;width:43px;height:49px;border-radius:45%;background:#d6a17d;box-shadow:0 -8px 0 4px #172845}.person:after{content:"";position:absolute;bottom:-4px;left:5px;width:110px;height:130px;background:#172f50;clip-path:polygon(25% 0,75% 0,100% 100%,0 100%)}.backpack{position:absolute;z-index:4;bottom:5px;left:0;width:45px;height:78px;border-radius:12px;background:#315c8d;border:3px solid #172f50}.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:16px 0 32px}.benefit{background:white;border:1px solid var(--l);border-radius:12px;padding:15px;display:flex;gap:11px;align-items:center}.ico{display:grid;place-items:center;background:var(--p);color:var(--b);border-radius:9px;width:34px;height:34px;font-weight:800;flex-shrink:0}.benefit b{display:block;font-size:11px;margin-bottom:4px}.muted{color:var(--m)}.tiny{font-size:10px}.head{display:flex;justify-content:space-between;align-items:end;margin:28px 0 14px}.head h2{margin:0;color:var(--n);font-size:22px;letter-spacing:-.7px}.head p{margin:5px 0 0;color:var(--m);font-size:11px}.link{border:0;background:none;color:var(--b);font-weight:800}.projectgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.project,.card{background:white;border:1px solid var(--l);border-radius:13px;padding:9px;min-width:0}.thumb{height:105px;border-radius:8px;background:linear-gradient(135deg,#12294a,#4f8bbc);position:relative;overflow:hidden}.thumb:after{content:"";position:absolute;width:65%;height:58%;top:20%;left:17%;background:#e1efff;border:4px solid white;transform:rotate(-4deg);box-shadow:0 5px 15px #102c4c55}.thumb.t2{background:linear-gradient(135deg,#e4ebf7,#829bc3)}.thumb.t3{background:linear-gradient(135deg,#c6d9e9,#607a9b)}.thumb.t4{background:linear-gradient(135deg,#e8eff7,#a7c0da)}.project h3{font-size:11px;margin:10px 2px 5px}.project p{font-size:10px;color:var(--m);margin:0 2px 8px}.pill,.status{display:inline-block;border-radius:99px;padding:5px 8px;background:#eff3f8;color:#64758d;font-size:9px;font-weight:800}.verified{background:#e3f7ef;color:var(--g)}.review{background:#fff2df;color:var(--a)}.revision{background:#ffeaed;color:var(--r)}.layout{display:grid;grid-template-columns:190px minmax(0,1fr);gap:18px}.side{background:white;border:1px solid var(--l);border-radius:14px;padding:14px 10px;min-height:570px;display:flex;flex-direction:column;gap:4px}.user{display:flex;gap:9px;align-items:center;padding:5px 7px 17px;border-bottom:1px solid var(--l);margin-bottom:6px}.avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#d7eaff,#7da9d9);color:#214b7e;font-weight:800;flex-shrink:0}.side button{border:0;text-align:left;padding:11px 9px;border-radius:8px;background:white;color:var(--m);font-size:11px;font-weight:700}.side button.active{background:var(--b);color:white}.main{min-width:0}.pagetitle{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:4px 0 20px}.pagetitle h1{font-size:26px;letter-spacing:-1px;margin:0;color:var(--n)}.pagetitle p{font-size:11px;color:var(--m);margin:6px 0 0}.twocol{display:grid;grid-template-columns:1.1fr .9fr;gap:12px}.next{border:1px solid #d6e7fa;background:linear-gradient(125deg,#fbfdff,#e7f2ff);border-radius:14px;padding:20px}.next h3{font-size:15px;margin:9px 0}.next p{font-size:11px;line-height:1.7;color:var(--m)}.journey{background:white;border:1px solid var(--l);border-radius:14px;padding:18px}.journey h3{font-size:13px;margin:0 0 16px}.steps{display:flex;justify-content:space-between;position:relative}.steps:before{content:"";position:absolute;top:12px;left:8%;right:8%;height:2px;background:#dce6f2}.step{width:20%;text-align:center;color:var(--m);font-size:9px;position:relative}.dot{position:relative;z-index:1;margin:0 auto 7px;width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:#f3f7fb;border:2px solid #d6e4f4;color:#91a4bd;font-weight:800}.step.done .dot,.step.current .dot{background:var(--b);border-color:var(--b);color:white}.step b{display:block;color:var(--n);font-size:9px;margin-bottom:3px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:13px 0}.stat{padding:14px;background:white;border:1px solid var(--l);border-radius:12px}.stat span{font-size:10px;color:var(--m)}.stat strong{display:block;font-size:23px;letter-spacing:-1px;margin:7px 0 3px;color:var(--n)}.stat small{font-size:9px;color:var(--m)}.lower{display:grid;grid-template-columns:1.2fr .8fr;gap:12px}.panel{background:white;border:1px solid var(--l);border-radius:14px;padding:16px;min-width:0}.panelhead{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.panelhead h3{margin:0;font-size:13px}.row{display:flex;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid #edf1f6}.row:last-child{border:0}.mini{width:58px;height:42px;border-radius:7px;background:linear-gradient(135deg,#183455,#7aa9d7);flex-shrink:0}.grow{flex:1;min-width:0}.row b{font-size:10px;display:block;margin-bottom:4px}.row p{font-size:10px;color:var(--m);margin:0}.activity{display:flex;gap:9px;padding:11px 0;border-bottom:1px solid #edf1f6}.activity:last-child{border:0}.activity i{width:8px;height:8px;border-radius:50%;background:var(--b);margin-top:4px}.activity b{font-size:10px}.activity p{font-size:10px;color:var(--m);line-height:1.5;margin:4px 0 0}.search{display:flex;gap:8px;margin:15px 0 10px}.search input{flex:1}.search input,input,select,textarea{border:1px solid #dfe7f1;border-radius:9px;padding:10px 12px;background:white;min-width:0;color:#14223d;outline:none}.filters{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0 15px}.filters select{font-size:10px;padding:8px}.joblist{display:flex;flex-direction:column;gap:9px}.job{display:flex;align-items:center;gap:12px;background:white;border:1px solid var(--l);border-radius:12px;padding:14px}.logo{width:39px;height:39px;background:var(--p);color:var(--b);border-radius:10px;display:grid;place-items:center;font-weight:800;flex-shrink:0}.job h3{font-size:12px;margin:0 0 5px}.job p{font-size:10px;color:var(--m);margin:0 0 7px}.meta{font-size:10px;color:var(--m);display:flex;gap:10px;flex-wrap:wrap}.detailgrid{display:grid;grid-template-columns:1fr 250px;gap:12px}.detailhero{background:linear-gradient(125deg,#fbfdff,#e7f2ff);border:1px solid #d6e7fa;border-radius:14px;padding:20px}.detailhero h2{font-size:22px;margin:12px 0 7px}.detailhero p,.content p,.content li{font-size:11px;line-height:1.8;color:var(--m)}.content{padding:17px 0;border-bottom:1px solid var(--l)}.content h3{font-size:12px;margin:0 0 8px}.content ul{padding-left:18px}.sidebox{background:white;border:1px solid var(--l);border-radius:14px;padding:17px;height:max-content}.sidebox h3{font-size:13px;margin:0 0 12px}.line{display:flex;justify-content:space-between;gap:8px;padding:10px 0;border-bottom:1px solid #edf1f6;font-size:10px}.line span{color:var(--m)}.sidebox .btn{width:100%;margin-top:12px}.portfolio{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}.portfolio .thumb{height:100px}.portfolio h3{font-size:11px;margin:10px 2px 5px}.portfolio p{font-size:10px;color:var(--m)}.portfolio .bottom{display:flex;align-items:center;justify-content:space-between}.reviewgrid{display:grid;grid-template-columns:.8fr 1.2fr;gap:12px}.queue{display:flex;flex-direction:column;gap:7px}.queue button{display:flex;gap:9px;align-items:center;text-align:left;border:1px solid var(--l);border-radius:10px;background:white;padding:11px}.queue button.sel{background:#f4f9ff;border-color:#82b3e8}.queue b{font-size:10px;display:block}.queue small{font-size:9px;color:var(--m)}.feedback{width:100%;min-height:85px;resize:vertical;margin:8px 0}.actions{display:flex;gap:7px;flex-wrap:wrap}.candidates{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.candidate{background:white;border:1px solid var(--l);border-radius:12px;padding:14px}.candidatehead{display:flex;gap:9px;align-items:center;margin-bottom:12px}.candidate h3{font-size:11px;margin:0 0 4px}.candidate p{font-size:9px;color:var(--m);margin:0}.tags{display:flex;gap:5px;flex-wrap:wrap;margin:10px 0}.candidate .btn{width:100%}.apps{display:flex;flex-direction:column;gap:8px}.approw{display:grid;grid-template-columns:1.3fr .8fr .8fr auto;gap:10px;align-items:center;background:white;border:1px solid var(--l);border-radius:11px;padding:13px}.approw b{font-size:10px;display:block;margin-bottom:4px}.approw small{font-size:9px;color:var(--m)}.empty{text-align:center;padding:30px;color:var(--m)}.footer{display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--l);margin-top:30px;padding-top:17px;color:var(--m);font-size:10px}.mobile{display:none}.toast{position:fixed;right:18px;bottom:18px;background:var(--n);color:white;padding:13px 16px;border-radius:10px;display:none;z-index:30;max-width:320px}.toast.show{display:block}
@media(max-width:900px){.shell{padding:20px 3%}.layout{grid-template-columns:160px 1fr;gap:12px}.twocol{grid-template-columns:1fr}.projectgrid{grid-template-columns:repeat(2,1fr)}.stats{grid-template-columns:repeat(2,1fr)}.lower,.detailgrid,.reviewgrid{grid-template-columns:1fr}.portfolio,.candidates{grid-template-columns:repeat(2,1fr)}.hero-copy{padding:30px 24px}}
@media(max-width:620px){.top{height:57px;padding:0 14px;justify-content:space-between}.nav{display:none}.shell{padding:15px 12px 85px}.hero{grid-template-columns:1fr}.hero-copy{padding:27px 20px 23px}.hero h1{font-size:36px}.art{min-height:210px}.person{right:30%;transform:scale(.85);transform-origin:bottom}.benefits{grid-template-columns:1fr;gap:8px;margin-bottom:24px}.benefit{padding:11px}.layout{display:block}.side{display:none}.pagetitle h1{font-size:23px}.pagetitle{align-items:flex-start}.projectgrid{gap:8px}.thumb{height:85px}.stats{gap:7px}.stat{padding:12px}.stat strong{font-size:21px}.journey{padding:15px 10px}.step{font-size:8px}.step b{font-size:8px}.dot{width:23px;height:23px}.panel{padding:13px}.job{padding:11px;gap:8px;align-items:flex-start}.logo{width:32px;height:32px}.job h3{font-size:10px}.job .btn{padding:7px;font-size:9px}.portfolio,.candidates{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.portfolio .thumb{height:80px}.approw{grid-template-columns:1fr 1fr}.approw .appstatus{grid-column:1/-1}.mobile{position:fixed;bottom:0;left:0;right:0;z-index:20;background:white;border-top:1px solid var(--l);display:flex;justify-content:space-around;padding:7px 2px calc(7px + env(safe-area-inset-bottom))}.mobile button{border:0;background:none;color:#8190a7;font-size:9px;display:flex;flex-direction:column;align-items:center;gap:3px}.mobile button span{font-size:17px}.mobile button.active{color:var(--b);font-weight:800}.footer{display:block;line-height:2}.footer span{display:block}}

/* Minimal Editorial landing page refresh */
.editorial-hero{display:grid;grid-template-columns:1.02fr .98fr;min-height:420px;background:#fff;border:1px solid var(--l);border-radius:18px;overflow:hidden;margin-bottom:0}.editorial-copy{padding:clamp(28px,4vw,58px) clamp(22px,4vw,52px);display:flex;flex-direction:column;justify-content:center}.editorial-copy .eyebrow{letter-spacing:1.7px}.editorial-copy h1{font-size:clamp(48px,6.4vw,78px);letter-spacing:-4px;line-height:.99;margin:0 0 22px;color:var(--n);font-weight:800}.editorial-copy h1 em,.section-intro h2 em,.section-heading h2 em,.ecosystem-lead h2 em,.closing-cta h2 em{font-family:'Plus Jakarta Sans',sans-serif;font-weight:400;color:var(--b)}.editorial-copy p{font-size:13px;line-height:1.9;max-width:410px}.hero-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap}.hero-actions .btn,.closing-cta .btn{padding:13px 17px}.text-cta{border:0;background:none;padding:8px 0;color:var(--n);font-size:11px;font-weight:800;text-align:left}.text-cta span{color:var(--b);margin-left:8px}.hero-note{display:flex;align-items:center;gap:9px;color:var(--m);font-size:10px;margin-top:28px}.note-line{width:24px;height:1px;background:var(--b)}.editorial-art{position:relative;min-height:390px;overflow:hidden;background:#eaf1f9;display:grid;place-items:center}.art-label,.art-index{position:absolute;z-index:3;top:24px;font-size:9px;letter-spacing:1.3px;font-weight:800;color:#46617e}.art-label{left:25px}.art-index{right:25px}.art-index span{color:#8195ad}.art-paper{position:relative;z-index:2;width:min(62%,290px);min-width:220px;height:310px;background:#fff;padding:17px 18px;box-shadow:0 22px 50px #1d3b5a20;transform:rotate(-5deg);display:flex;flex-direction:column;justify-content:space-between}.paper-top,.paper-bottom{display:flex;justify-content:space-between;font-size:7px;letter-spacing:1px;font-weight:800;color:#6b7d94}.paper-title{font-size:clamp(37px,4.3vw,53px);line-height:.9;letter-spacing:-2.8px;font-weight:800;color:var(--n)}.paper-title i{font-family:'Plus Jakarta Sans',sans-serif;font-weight:400;color:var(--b)}.art-orbit{position:absolute;border:1px solid #abc4df;border-radius:50%;width:420px;height:420px;transform:rotate(-24deg)}.orbit-one{right:-135px;top:-60px}.orbit-two{left:-230px;bottom:-275px;width:500px;height:500px}.art-sticker{position:absolute;z-index:3;right:9%;bottom:15%;background:var(--b);color:white;padding:13px 16px;font-size:10px;line-height:1.4;font-weight:800;letter-spacing:1.3px;transform:rotate(8deg);box-shadow:0 9px 20px #173e6d2c}.value-strip{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--l);background:#fff;padding:20px 25px;gap:20px}.value-strip>div{display:grid;grid-template-columns:30px auto;column-gap:10px;align-items:center}.value-no{grid-row:span 2;font-size:10px;color:var(--b);font-weight:800}.value-strip b{font-size:12px}.value-strip div span:last-child{font-size:10px;color:var(--m);margin-top:3px}.home-section{padding:68px 0 20px}.section-intro h2,.section-heading h2,.ecosystem-lead h2{font-size:clamp(31px,4vw,46px);line-height:1.08;letter-spacing:-1.8px;color:var(--n);margin:0 0 14px}.section-intro p,.section-desc,.ecosystem-lead p{max-width:350px;font-size:12px;line-height:1.9;color:var(--m);margin:0 0 17px}.journey-section{display:grid;grid-template-columns:.72fr 1.28fr;gap:38px;align-items:center}.journey-board{background:#fff;border:1px solid var(--l);border-radius:14px;padding:20px 22px}.journey-board-head,.journey-board-foot{display:flex;justify-content:space-between;gap:10px;color:var(--m);font-size:8px;font-weight:800;letter-spacing:1px}.journey-track{margin:14px 0}.journey-item{display:grid;grid-template-columns:40px 1fr 20px;gap:11px;align-items:center;padding:14px 0;border-bottom:1px solid #edf1f6}.journey-item:last-child{border-bottom:0}.journey-node{width:36px;height:36px;display:grid;place-items:center;border:1px solid #d7e3f1;border-radius:50%;font-size:10px;font-weight:800;color:var(--b);background:#f4f8fd}.journey-item:nth-child(3) .journey-node{background:var(--b);border-color:var(--b);color:#fff}.journey-copy b{display:block;font-size:12px;color:var(--n);margin-bottom:4px}.journey-copy span{font-size:10px;color:var(--m)}.journey-arrow{color:#8da4bf;font-size:14px}.journey-board-foot{border-top:1px solid var(--l);padding-top:13px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:20px}.section-heading .btn{white-space:nowrap}.opportunity-section{border-top:1px solid var(--l);margin-top:45px}.opportunity-preview{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.op-preview{background:#fff;border:1px solid var(--l);border-radius:13px;padding:17px;min-width:0}.op-preview-top{display:flex;justify-content:space-between;align-items:center}.op-num{font-size:10px;font-weight:800;color:#94a3b8}.op-type{background:var(--p);color:var(--b);font-size:9px;font-weight:800;border-radius:20px;padding:5px 8px}.op-symbol{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:#f0f5fb;color:var(--n);font-weight:800;font-size:17px;margin:22px 0 17px}.op-preview h3{font-size:14px;margin:0 0 5px;letter-spacing:-.3px}.op-preview p{font-size:10px;color:var(--m);margin:0 0 15px}.op-meta{display:flex;justify-content:space-between;gap:8px;border-top:1px solid #edf1f6;padding-top:12px;color:var(--m);font-size:9px}.op-preview .text-cta{margin-top:12px}.data-note{font-size:9px;color:var(--m);margin-top:12px}.work-section{border-top:1px solid var(--l);margin-top:45px}.work-section .projectgrid{grid-template-columns:repeat(3,1fr);gap:14px}.work-section .project{padding:10px}.work-section .thumb{height:150px}.work-section .project h3{font-size:13px}.work-section .project p{font-size:10px}.work-caption{display:flex;justify-content:space-between;gap:10px;margin-top:13px;padding-top:12px;border-top:1px solid var(--l);font-size:8px;letter-spacing:.5px;color:var(--m)}.ecosystem{display:grid;grid-template-columns:.75fr 1.25fr;gap:38px;border-top:1px solid var(--l);margin-top:45px}.role-list{border-top:1px solid var(--l)}.role-list article{display:grid;grid-template-columns:90px 1fr 22px;gap:12px;align-items:start;padding:19px 0;border-bottom:1px solid var(--l)}.role-list article>span:first-child{font-size:8px;letter-spacing:.7px;color:var(--b);font-weight:800;padding-top:5px}.role-list h3{font-size:14px;margin:0 0 6px}.role-list p{font-size:10px;color:var(--m);line-height:1.7;margin:0;max-width:390px}.role-icon{color:var(--b);font-size:15px}.closing-cta{margin-top:60px;padding:50px 25px;background:#eaf1f9;border-radius:16px;text-align:center}.closing-cta .eyebrow{margin-bottom:15px}.closing-cta h2{font-size:clamp(35px,5vw,56px);line-height:1.03;letter-spacing:-2px;color:var(--n);margin:0 0 14px}.closing-cta p{font-size:11px;color:var(--m);margin:0 auto 20px;line-height:1.8}.editorial-footer{display:grid;grid-template-columns:1fr 1.4fr;gap:20px;margin-top:25px;padding:25px 0 10px}.editorial-footer .brand{font-size:16px}.editorial-footer .brand i{width:22px;height:22px;font-size:12px}.editorial-footer p{font-size:10px;color:var(--m);margin:8px 0}.footer-links{display:flex;justify-content:flex-end;align-items:flex-start;gap:18px;flex-wrap:wrap}.footer-links button{border:0;background:none;color:var(--m);font-size:10px;font-weight:700}.footer-meta{grid-column:1/-1;border-top:1px solid var(--l);padding-top:13px;margin-top:8px;display:flex;justify-content:space-between;gap:10px;color:var(--m);font-size:9px}
@media(max-width:800px){.editorial-hero{grid-template-columns:1fr}.editorial-copy{padding:35px 28px}.editorial-art{min-height:320px}.art-paper{height:260px}.journey-section,.ecosystem{grid-template-columns:1fr;gap:20px}.section-intro{max-width:540px}.work-section .projectgrid{grid-template-columns:repeat(3,1fr)}.work-section .thumb{height:100px}}
@media(max-width:620px){.editorial-copy{padding:30px 21px}.editorial-copy h1{font-size:53px;letter-spacing:-3px}.editorial-copy p{font-size:12px}.editorial-art{min-height:280px}.art-paper{height:225px;min-width:190px;width:57%}.paper-title{font-size:40px}.art-sticker{right:7%;bottom:12%}.value-strip{padding:15px 13px;gap:10px}.value-strip>div{grid-template-columns:22px auto;gap:6px}.value-strip b{font-size:10px}.value-strip div span:last-child{font-size:8px;line-height:1.4}.home-section{padding-top:45px}.section-heading{align-items:flex-start;flex-direction:column;gap:10px}.section-heading h2,.section-intro h2,.ecosystem-lead h2{font-size:34px}.journey-board{padding:15px 12px}.journey-item{grid-template-columns:34px 1fr 15px;gap:8px;padding:12px 0}.journey-node{width:31px;height:31px}.journey-copy b{font-size:11px}.journey-copy span{font-size:9px}.journey-board-head,.journey-board-foot{font-size:7px}.opportunity-preview{grid-template-columns:1fr}.op-preview{padding:15px}.op-symbol{margin:14px 0 12px}.work-section .projectgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.work-section .projectgrid .project:nth-child(3){display:none}.work-section .thumb{height:88px}.work-section .project h3{font-size:11px}.work-caption{font-size:7px;line-height:1.6}.role-list article{grid-template-columns:65px 1fr 15px;gap:8px}.role-list h3{font-size:12px}.closing-cta{padding:38px 18px;margin-top:40px}.closing-cta h2{font-size:39px}.editorial-footer{grid-template-columns:1fr}.footer-links{justify-content:flex-start;gap:14px}.footer-meta{font-size:8px;line-height:1.5}}


/* v3: perbaikan prototype */
:root{--m:#5b6b84}
body{font-size:14px}
.ic{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none;vertical-align:-4px}
.side button{display:flex;align-items:center;gap:9px}
.mobile button{display:flex;flex-direction:column;align-items:center;gap:3px}
.mobile .ic{width:20px;height:20px;vertical-align:0}
.meta .ic,.tags .ic{width:14px;height:14px;vertical-align:-2px}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--b);outline-offset:2px}
#modal{position:fixed;inset:0;background:rgba(11,23,52,.42);display:none;align-items:center;justify-content:center;padding:20px;z-index:60}
#modal.open{display:flex}
.modalbox{background:#fff;border-radius:18px;padding:24px;max-width:520px;width:100%;max-height:90vh;overflow:auto}
.modalbox h2{margin:6px 0 10px;color:var(--n);font-size:24px}
.modalbox .content{padding:14px 0;border-top:1px solid var(--l)}
.modalbox .actions{display:flex;gap:8px;justify-content:flex-end;margin-top:12px}
.fld{display:block;width:100%;margin-top:7px;border:1px solid var(--l);border-radius:10px;padding:10px 12px;background:#fff}
textarea.fld{min-height:90px;resize:vertical}
.err{color:var(--r);font-size:12px;font-weight:700;margin:4px 0 0}
.empty-box{text-align:center;padding:30px 20px;border:1px dashed var(--l);border-radius:14px;background:#fff;color:var(--m)}
.journey-item.is-done .journey-node{background:var(--g);color:#fff;border-color:var(--g)}
.journey-item.is-current .journey-node{background:var(--b);color:#fff;border-color:var(--b)}
.journey-node .ic{width:16px;height:16px;vertical-align:0}
.journey-arrow .ic{width:16px;height:16px;vertical-align:-3px}
.op-meta .ic,.role-icon .ic,.btn .ic{width:16px;height:16px;vertical-align:-3px}
.row .link{margin-left:8px}

/* v4: mobile */
@media (max-width:620px){
 .layout{display:block}
 .side{flex-direction:row;overflow-x:auto;gap:6px;padding:10px 12px;margin-bottom:14px;align-items:center;border-radius:14px}
 .side .user{flex:0 0 auto;margin:0 6px 0 0}
 .side .user>div:last-child,.side>.tiny{display:none}
 .side button{flex:0 0 auto;white-space:nowrap;padding:8px 12px}
 .main{min-width:0}
 .filters{flex-wrap:wrap}
 .search{flex-wrap:wrap}
 .search input{min-width:0;width:100%}
 img,svg{max-width:100%}
}

/* v5: satu keluarga font (Plus Jakarta Sans) di seluruh aplikasi */
html,body,button,input,select,textarea,h1,h2,h3,h4,p,span,b,strong,small,label,em,i,a{font-family:'Plus Jakarta Sans',sans-serif}
em,.paper-title i{font-style:normal}

/* ===== DESIGN SYSTEM v6 · token dan komponen terpusat ===== */
:root{
  /* warna */
  --ink:#0b1734; --ink-2:#1d2d57; --blue:#2463ad; --blue-600:#1b4f8c; --blue-50:#eaf3ff;
  --bg:#f4f7fb; --surface:#ffffff; --text:#14223d; --muted:#5b6b84;
  --line:#e2e9f2; --line-strong:#cfdbea;
  --ok:#168b70; --ok-bg:#e3f7ef; --warn:#b97623; --warn-bg:#fff2df;
  --bad:#c94f5a; --bad-bg:#ffeaed; --idle:#5b6b84; --idle-bg:#eff3f8;
  /* bentuk */
  --r-sm:8px; --r-md:12px; --r-lg:18px; --r-pill:999px;
  /* jarak */
  --s-1:4px; --s-2:8px; --s-3:12px; --s-4:16px; --s-5:24px; --s-6:32px;
  /* tipografi */
  --t-xs:11px; --t-sm:13px; --t-md:14px; --t-lg:16px; --t-xl:20px; --t-2xl:28px;
  /* fokus */
  --focus:0 0 0 3px rgba(36,99,173,.25);
}
body{font-size:var(--t-md);color:var(--text);background:var(--bg)}
h1,h2,h3{color:var(--ink);font-weight:800;letter-spacing:-.02em}

/* tombol */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s-2);
  font-family:'Plus Jakarta Sans',sans-serif;font-size:var(--t-md);font-weight:700;line-height:1.2;
  border:1px solid transparent;border-radius:var(--r-sm);padding:10px 16px;cursor:pointer;
  transition:background-color .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease}
.btn.primary{background:var(--ink);color:#fff;border-color:var(--ink)}
.btn.primary:hover{background:var(--ink-2);border-color:var(--ink-2)}
.btn.secondary{background:var(--surface);color:var(--ink);border-color:var(--line-strong)}
.btn.secondary:hover{background:var(--bg)}
.btn.soft{background:var(--blue-50);color:var(--blue);border-color:transparent}
.btn.soft:hover{background:#dcebff}
.btn.small{font-size:var(--t-sm);padding:8px 12px}
.btn:focus-visible,.text-cta:focus-visible,.link:focus-visible,a:focus-visible{outline:2px solid var(--blue);outline-offset:2px;box-shadow:var(--focus)}
.btn:disabled{opacity:.5;cursor:not-allowed}
.btn:disabled:hover{background:inherit}

/* input */
input,select,textarea{font-family:'Plus Jakarta Sans',sans-serif;font-size:var(--t-md);color:var(--text);
  background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-sm);padding:10px 12px;outline:none;
  transition:border-color .15s ease,box-shadow .15s ease}
input::placeholder,textarea::placeholder{color:#8a97ab}
input:hover,select:hover,textarea:hover{border-color:#b9c9de}
input:focus,select:focus,textarea:focus{border-color:var(--blue);box-shadow:var(--focus)}
input:disabled,select:disabled,textarea:disabled{background:var(--bg);color:var(--muted);cursor:not-allowed}
.fld{border-color:var(--line-strong)}
.err{color:var(--bad);font-size:var(--t-xs);font-weight:700;margin:var(--s-1) 0 0}

/* status dan pill */
.pill,.status{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:var(--r-pill);
  font-size:var(--t-xs);font-weight:700;line-height:1.2;background:var(--idle-bg);color:var(--idle)}
.verified{background:var(--ok-bg);color:var(--ok)}
.review{background:var(--warn-bg);color:var(--warn)}
.revision{background:var(--bad-bg);color:var(--bad)}
.status.verified::before,.status.review::before,.status.revision::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}

/* modal dan toast */
#modal .modalbox{border-radius:var(--r-lg);box-shadow:0 24px 60px rgba(11,23,52,.22)}
.toast{background:var(--ink);border-radius:var(--r-md);box-shadow:0 12px 30px rgba(11,23,52,.25);font-size:var(--t-md)}

/* aksesibilitas gerakan */
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}

/* v7: tombol akun di header */
.acct-btn{overflow:hidden;padding:0;width:36px;height:36px;border-radius:50%;border:1px solid var(--ink);background:var(--ink);color:#fff;font:inherit;font-size:var(--t-sm);font-weight:800;cursor:pointer;display:inline-grid;place-items:center}
.acct-btn:hover{background:var(--ink-2)}
.acct-btn.active{box-shadow:0 0 0 3px var(--blue-50)}
.acct-btn:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
#authArea{display:flex;align-items:center;gap:8px}
[hidden]{display:none!important}
.brand{text-decoration:none}

/* v15: transisi perpindahan halaman */
@keyframes pageIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
.page-in{animation:pageIn .3s cubic-bezier(.2,.7,.2,1) both}
#modal.open{animation:fadeIn .18s ease both}
#modal.open .modalbox{animation:pageIn .22s cubic-bezier(.2,.7,.2,1) both}
@media (prefers-reduced-motion:reduce){.page-in,#modal.open,#modal.open .modalbox{animation:none}}

/* v16: dashboard akun (gaya baru, data MINCAT) */
.ak-head{display:flex;gap:12px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px 18px;margin-bottom:12px}
.ak-head h1{font-size:22px;margin:0}
.ak-head p{margin:2px 0 0;color:var(--muted);font-size:13px}
.ak-ico{width:42px;height:42px;border-radius:12px;background:var(--blue-50);color:var(--blue);display:grid;place-items:center;flex-shrink:0}
.ak-ico .ic{width:20px;height:20px}
.ak-tabs{display:flex;gap:8px;overflow-x:auto;padding:4px 2px 12px;scrollbar-width:none}
.ak-tabs::-webkit-scrollbar{display:none}
.ak-tabs .chipbtn{display:inline-flex;align-items:center;gap:6px}
.ak-tabs .chipbtn .ic{width:16px;height:16px;vertical-align:0}
.ak-hero{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:16px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px}
.ak-hero h2{font-size:20px;margin:4px 0 6px}
.ak-hero p{color:var(--muted);font-size:14px;margin:0 0 14px}
.ak-art svg{width:100%;height:auto;display:block}
.ak-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px;margin-top:12px}
.ak-card h3{margin:0 0 8px;font-size:15px}
.ak-card-head{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;flex-wrap:wrap}
.ak-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ak-row{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-top:1px solid var(--line);align-items:center}
.ak-row:first-of-type{border-top:0}
.ak-kv{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-top:1px solid var(--line)}
.ak-kv:first-of-type{border-top:0}
.ak-kv span{color:var(--muted)}
.ak-kv b{text-align:right}
.ak-rows{display:flex;flex-direction:column;gap:12px}
.ak-appcard{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:0}
.ak-cal{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;text-align:center;font-size:12px}
.ak-cal .wd{color:var(--muted);font-weight:700;padding-bottom:4px}
.ak-cal span{padding:6px 0;border-radius:50%;min-width:28px}
.ak-cal .today{background:var(--ink);color:#fff;font-weight:700}
.ak-cal .mk{background:var(--blue-50);color:var(--blue);font-weight:700}
@media (max-width:800px){.ak-grid{grid-template-columns:1fr}.ak-hero{grid-template-columns:1fr}.ak-art{display:none}}

.ak-tabs .chipbtn{border-radius:999px;background:#fff;border:1px solid var(--line-strong);padding:8px 14px;color:var(--ink);white-space:nowrap}
.ak-tabs .chipbtn.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.ak-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}
.ak-stats .stat{padding:14px}
.ak-stats .stat strong{font-size:22px}
@media (max-width:480px){.ak-stats .stat span{font-size:11px}.ak-stats .stat small{display:none}}

/* v17: layout desktop seperti referensi (sidebar kiri + konten + baris bawah) */
.ak-shell{display:block}
.ak-side{display:none}
.ak-side-user{display:flex;gap:10px;align-items:center;padding:4px 6px 16px;border-bottom:1px solid var(--line);margin-bottom:10px}
.ak-side-user b{display:block;color:var(--ink);font-size:14px}
.ak-side-user p{margin:0}
.ak-side button{display:flex;align-items:center;gap:10px;width:100%;background:none;border:0;padding:11px 12px;border-radius:12px;color:var(--muted);font-weight:700;font-size:14px;cursor:pointer;text-align:left;font-family:inherit}
.ak-side button:hover{background:var(--bg);color:var(--ink)}
.ak-side button.on{background:var(--blue-50);color:var(--ink)}
.ak-side .ic{width:18px;height:18px;flex:none}
.ak-logout{color:var(--bad)!important;margin-top:6px}
.ak-logout .ic{transform:rotate(180deg)}
.ak-bottom{display:grid;grid-template-columns:1fr;gap:12px}
.ak-mini{text-align:center}
.ak-mini .avatar{margin:0 auto}
.ak-mini-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:14px;background:var(--bg);border-radius:12px;padding:10px}
.ak-mini-stats b{display:block;color:var(--ink);font-size:16px}
.ak-mini-stats span{font-size:11px;color:var(--muted)}
@media (min-width:1024px){
 .ak-shell{display:grid;grid-template-columns:240px minmax(0,1fr);gap:20px;align-items:start}
 .ak-side{display:flex;flex-direction:column;gap:2px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px;position:sticky;top:88px}
 .ak-tabs{display:none}
 .ak-head{display:none}
 .ak-bottom{grid-template-columns:1fr 1.2fr 1fr;align-items:start}
}
.match{display:inline-block;font-size:11px;font-weight:700;padding:3px 9px;border-radius:999px;margin-left:6px;vertical-align:middle}
.match.hi{background:#e3f7ef;color:#168b70}.match.mid{background:#fff2df;color:#b97623}.match.lo{background:#eef1f6;color:#5b6b84}
.match-box{margin-top:12px;padding:12px 14px;border-radius:12px;background:#f4f7fb;font-size:13px}
.match-box b{display:block;color:#0b1734;margin-bottom:2px}
.bell{position:relative;width:36px;height:36px;border-radius:50%;border:1px solid var(--line-strong);background:#fff;display:grid;place-items:center;cursor:pointer;color:var(--ink);padding:0}
.bell .ic{width:18px;height:18px}
.dot-n{position:absolute;top:-4px;right:-4px;background:var(--bad);color:#fff;font-size:10px;font-weight:800;border-radius:999px;padding:1px 6px;line-height:1.3}
.notif-panel{position:fixed;top:68px;right:16px;width:min(340px,calc(100vw - 32px));background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 18px 40px rgba(11,23,52,.18);z-index:55;max-height:60vh;overflow:auto;padding:10px 12px;animation:pageIn .2s cubic-bezier(.2,.7,.2,1) both}
.notif-panel[hidden]{display:none}
.notif-head{padding:4px 4px 8px;font-size:14px}
.notif-item{padding:10px 6px;border-top:1px solid var(--line);font-size:13px}
.notif-item:first-of-type{border-top:0}
.notif-item.new{background:var(--blue-50);border-radius:10px}
.notif-item small{color:var(--muted)}
.hist-row{font-size:13px;color:var(--text);padding:8px 0;border-top:1px solid var(--line)}
.hist-row:first-of-type{border-top:0}
#printArea{display:none}
.chk{display:flex;gap:8px;align-items:center;font-size:13px;margin:10px 0}
@media print{
 body *{visibility:hidden}
 #printArea,#printArea *{visibility:visible}
 #printArea{display:block;position:absolute;left:0;top:0;width:100%;padding:28px;color:#000;background:#fff}
 #printArea h1{font-size:24px;margin:0 0 4px}
 #printArea h2{font-size:16px;margin:18px 0 8px}
 .pr{break-inside:avoid;border-top:1px solid #ccc;padding:10px 0}
}
.share-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px;margin:0 0 14px}
.share-card b{display:block;color:var(--ink);font-size:15px;margin-bottom:2px}
.share-card p{margin:0}
.share-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}
.share-actions .btn{width:100%;justify-content:center;white-space:nowrap;min-height:44px;font-size:13px;padding:10px 8px}
@media (max-width:420px){.share-actions{grid-template-columns:1fr}}
.tiny.hot{color:var(--bad);font-weight:700}.tiny.warn{color:var(--warn);font-weight:700}
.app-acts{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}
.app-acts .btn{min-width:88px;justify-content:center}
.chip-wrap{display:flex;flex-wrap:wrap;gap:8px;margin-top:7px}
.chip-check{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line-strong);border-radius:999px;padding:6px 12px;font-size:13px;cursor:pointer;background:#fff}
.chip-check input{width:auto;margin:0}
.chip-check:has(input:checked){background:var(--blue-50);border-color:var(--blue);color:var(--ink)}
.jr{margin-bottom:12px}.jr-head{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;flex-wrap:wrap}.jr p{margin:6px 0;font-size:14px}
.kom-row{display:flex;gap:12px;align-items:center;padding:12px 0;border-top:1px solid var(--line)}
.kom-row:first-of-type{border-top:0}
.kom-row .grow{flex:1;min-width:0}
.kom-row select{margin-top:6px}
.kom-box{width:26px;height:26px;border-radius:8px;border:2px solid var(--line-strong);background:#fff;display:grid;place-items:center;cursor:pointer;flex:none;padding:0;color:#fff}
.kom-box.on{background:var(--blue);border-color:var(--blue)}
.kom-box .ic{width:14px;height:14px}
.roles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.role-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px;display:flex;flex-direction:column;gap:8px}
@media (max-width:620px){.roles{grid-template-columns:1fr}}
.kom-row select{min-width:120px}
#printArea table{width:100%;border-collapse:collapse;margin:8px 0 14px;font-size:12px}
#printArea th,#printArea td{border:1px solid #bbb;padding:6px;text-align:left;vertical-align:top}
#printArea h2{font-size:14px}

/* ===== UI pass v36 ===== */
.job{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:14px;align-items:start}
.job .grow{min-width:0}
.job h3{font-size:16px;line-height:1.3;display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.job .meta{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:13px;margin-top:6px}
.job .meta span{white-space:nowrap;display:inline-flex;align-items:center;gap:4px}
.job .filters{margin-top:10px;gap:6px}
.job-side{display:flex;flex-direction:column;align-items:flex-end;gap:8px;text-align:right}
.job-side .btn{white-space:nowrap}
.project .bottom{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}
.project .bottom .link{white-space:nowrap}
.status,.pill{white-space:nowrap}
.pagetitle .btn{white-space:nowrap;flex:none}
.toast{font-size:14px}
@media (max-width:800px){
 .toast{bottom:96px}
}
@media (max-width:620px){
 .job{grid-template-columns:40px minmax(0,1fr)}
 .job-side{grid-column:1/-1;flex-direction:row;justify-content:space-between;align-items:center;text-align:left;border-top:1px solid var(--line);padding-top:12px}
 .filters:has(> .btn){flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}
 .filters:has(> .btn)::-webkit-scrollbar{display:none}
 .filters:has(> .btn) .btn{flex:none}
}

.toolbar select,.filters select{height:42px;border:1px solid var(--line-strong);border-radius:var(--r-sm);padding:0 12px;background:#fff;font:inherit;font-size:14px;color:var(--text)}
@media (max-width:620px){.filters select{flex:none;min-width:max-content}.filters{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.filters::-webkit-scrollbar{display:none}}
/* v37: mode tamu */
body.guest .mobile{display:none}
body.guest [data-private]{display:none}
.showcase{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}
.showcase-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px}
.showcase-card h3{margin:12px 0 6px;font-size:16px}
.showcase-card .tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.showcase-head{display:flex;gap:10px;align-items:center}
.showcase-head .avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#B3CDE0,#2B5C92);color:#fff;display:grid;place-items:center;font-weight:800;font-size:14px;flex:none}
.showcase-head b{display:block;font-size:14px}
.showcase-head small{color:var(--muted);font-size:12px}
/* v42: logo resmi MINCAT */
.brand{display:inline-flex;align-items:center;text-decoration:none}
.logo-img{display:block;height:34px;width:auto}
@media (max-width:620px){.logo-img{height:30px}}

/* ===== asisten MINCAT ===== */
.bot-fab{position:fixed;right:16px;bottom:96px;width:52px;height:52px;border-radius:50%;border:0;background:var(--blue);color:#fff;display:grid;place-items:center;cursor:pointer;box-shadow:0 10px 24px rgba(11,23,52,.25);z-index:47}
.bot-fab:hover{background:var(--blue-600)}
.bot-fab:focus-visible{outline:2px solid var(--blue);outline-offset:3px}
@media (min-width:801px){.bot-fab{bottom:24px;right:24px}}
.bot-panel{position:fixed;right:16px;bottom:160px;width:min(360px,calc(100vw - 32px));height:min(560px,calc(100vh - 220px));background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 20px 50px rgba(11,23,52,.22);z-index:48;display:flex;flex-direction:column;overflow:hidden;animation:pageIn .2s cubic-bezier(.2,.7,.2,1) both}
.bot-panel[hidden]{display:none}
@media (min-width:801px){.bot-panel{bottom:96px;right:24px}}
.bot-head{display:flex;align-items:center;gap:10px;background:var(--ink);color:#fff;padding:14px 16px}
.bot-head b{display:block;font-size:14px}
.bot-head small{color:#B8C7DF;font-size:12px}
.bot-mark{width:36px;height:36px;border-radius:10px;background:#fff;color:var(--ink);display:grid;place-items:center;font-weight:800;flex:none}
.bot-x{background:rgba(255,255,255,.12);border:0;color:#fff;width:32px;height:32px;border-radius:10px;font-size:18px;cursor:pointer}
.bot-body{padding:14px 16px;overflow-y:auto;display:flex;flex-direction:column;gap:10px;flex:1 1 auto;min-height:0}
.bot-steps{margin:8px 0 0;padding-left:20px;display:flex;flex-direction:column;gap:4px}
.bot-steps li{font-size:14px;line-height:1.5}
.bot-q{margin:0;color:var(--muted);font-size:13px;font-weight:700}
.bot-opt{text-align:left;border:1px solid var(--line-strong);background:#fff;border-radius:14px;padding:12px 14px;cursor:pointer;display:flex;flex-direction:column;gap:2px;font:inherit}
.bot-opt:hover{border-color:var(--blue);background:var(--blue-50)}
.bot-opt b{color:var(--ink);font-size:14px}
.bot-opt small{color:var(--muted);font-size:12px}
.bot-msg{max-width:85%;padding:10px 12px;border-radius:14px;font-size:14px;line-height:1.5}
.bot-msg.bot{background:var(--bg);color:var(--text);align-self:flex-start;border-bottom-left-radius:4px}
.bot-msg.me{background:var(--ink);color:#fff;align-self:flex-end;border-bottom-right-radius:4px}
.bot-chips{display:flex;gap:6px;flex-wrap:wrap;padding:0 16px 8px}
.bot-chip{border:1px solid var(--line-strong);background:#fff;border-radius:999px;padding:6px 10px;font:inherit;font-size:12px;font-weight:700;color:var(--ink);cursor:pointer}
.bot-form{display:flex;gap:8px;padding:10px 16px;border-top:1px solid var(--line)}
.bot-form input{flex:1;min-width:0;border:1px solid var(--line-strong);border-radius:12px;padding:9px 12px;font:inherit;font-size:14px}
.bot-back{border:0;background:none;color:var(--blue);font:inherit;font-size:12px;font-weight:700;padding:8px 16px 12px;text-align:left;cursor:pointer}

/* v45: asisten di tengah bottom nav (HP, pengguna login) */
.bot-center{display:none}
@media (max-width:800px){
 .bot-center{display:grid;place-items:center;flex:0 0 auto;width:54px;height:54px;border-radius:50%;border:4px solid #fff;background:var(--blue);color:#fff;margin-top:-26px;box-shadow:0 8px 20px rgba(43,92,146,.35);cursor:pointer;align-self:center}
 body:not(.guest) #botFab{display:none}
 body:not(.guest) .bot-panel{bottom:100px}
}

/* v46: tombol asisten di tengah bottom nav, gaya NEXORA */
@media (max-width:800px){
 .mobile button.bot-center{background:#2f5fd6;color:#fff;border:4px solid #fff;width:58px;height:58px;margin-top:-30px;font-size:0;box-shadow:0 8px 18px rgba(47,95,214,.35);display:grid;place-items:center;padding:0;flex:0 0 auto}
 .mobile button.bot-center svg{width:24px;height:24px;stroke:#fff;fill:none}
}

.bot-typing{display:flex;flex-direction:column;gap:6px;color:var(--muted)}
.bot-typing small{font-size:12px}
.dots{display:inline-flex;gap:4px}
.dots i{width:7px;height:7px;border-radius:50%;background:var(--muted);display:block;animation:botDot 1.1s infinite ease-in-out}
.dots i:nth-child(2){animation-delay:.15s}
.dots i:nth-child(3){animation-delay:.3s}
@keyframes botDot{0%,80%,100%{opacity:.25;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}
@media (prefers-reduced-motion:reduce){.dots i{animation:none;opacity:.6}}
.bot-form button:disabled{opacity:.55;background:var(--ink);color:#fff;cursor:not-allowed}
.bot-form input:disabled{background:var(--bg);color:var(--muted)}

/* v50: efek buka dan tutup panel asisten, seperti Winterlie */
.bot-panel{transform-origin:bottom right;animation:botPop .3s cubic-bezier(.2,.8,.2,1) both}
.bot-panel.closing{animation:botOut .19s ease-in both}
@keyframes botPop{from{opacity:0;transform:translateY(18px) scale(.9)}to{opacity:1;transform:none}}
@keyframes botOut{from{opacity:1;transform:none}to{opacity:0;transform:translateY(14px) scale(.92)}}
.bot-fab{transition:transform .2s ease,background-color .2s ease}
.bot-fab.open{transform:scale(.9) rotate(-8deg)}
@media (prefers-reduced-motion:reduce){.bot-panel,.bot-panel.closing{animation:none}.bot-fab{transition:none}}

/* v51: panel asisten pakai transisi agar pasti terlihat */
.bot-panel{transform-origin:bottom right;animation:none;transition:opacity .28s ease,transform .32s cubic-bezier(.2,.8,.2,1)}
.bot-panel.bot-pre{opacity:0;transform:translateY(18px) scale(.9)}
.bot-panel.closing{animation:none}
@media (prefers-reduced-motion:reduce){.bot-panel{transition:none}.bot-panel.bot-pre{opacity:1;transform:none}}
.chk{display:flex;gap:8px;align-items:flex-start;font-size:13px;margin:8px 0}
.danger{background:var(--bad);color:#fff;border-color:var(--bad)}
.nav button{background:none;border:0;padding:8px 12px;font:inherit;font-weight:600;color:var(--muted);cursor:pointer;border-radius:8px}
.nav button.active{color:var(--blue);box-shadow:inset 0 -2px 0 var(--blue);border-radius:0}
