/* XYNY Security labs 004–007. Scoped, non-destructive portfolio extension. */
#portofolio .xyny-lab002-index{flex-wrap:wrap;gap:9px}
#portofolio .xyny-lab002-index a{white-space:normal}
#portofolio .xyny-lab47,#portofolio .xyny-lab47 *{box-sizing:border-box}
#portofolio .xyny-lab47{margin:clamp(70px,9vw,130px) 0 0;border-top:1px solid #a8ccdd42;padding-top:30px;color:#ECF8FF}
#portofolio .xyny-lab47-titlebar{display:flex;justify-content:space-between;gap:16px;padding:2px 0 22px;font:750 10px/1.6 ui-monospace,monospace;letter-spacing:.11em;color:#8DB5C8}
#portofolio .xyny-lab47-titlebar span:last-child{color:#B7E8D7}
#portofolio .xyny-lab47-intro{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);align-items:end;gap:40px;margin:30px 0 46px}
#portofolio .xyny-lab47-overline{color:#99EDD6;font:800 10px ui-monospace,monospace;letter-spacing:.12em}
#portofolio .xyny-lab47-intro h3{font-size:clamp(36px,5vw,64px);line-height:1.08;letter-spacing:-.058em;margin:15px 0 0;color:#FFF}
#portofolio .xyny-lab47-intro h3 em{font-style:normal;color:#B4D5F9}
#portofolio .xyny-lab47-intro>p{font-size:13px;line-height:1.85;color:#C1D2DB;margin:0}
#portofolio .xyny-lab47-intro>p strong{color:#FFFFFF}
#portofolio .xyny-lab47-metrics{border:1px solid #B6D7E744;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-radius:12px;overflow:hidden;background:linear-gradient(110deg,#0E2533,#17263D)}
#portofolio .xyny-lab47-metrics>div{padding:24px 23px;border-left:1px solid #B6D7E744}.xyny-lab47-metrics>div:first-child{border-left:0}
#portofolio .xyny-lab47-metrics b{font-size:clamp(27px,3.4vw,43px);line-height:1.2;letter-spacing:-.05em;display:block;color:#E9FBFF}
#portofolio .xyny-lab47-metrics b span{font-size:19px;color:#82D9CE}
#portofolio .xyny-lab47-metrics small{display:block;margin-top:7px;font:750 9px/1.5 ui-monospace,monospace;letter-spacing:.1em;color:#A2C1CD}
#portofolio .xyny-lab47-tiny{font-size:11px;color:#9FC2CE;line-height:1.75;margin:15px 0 37px;max-width:1000px}
#portofolio .xyny-lab47-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
#portofolio .xyny-lab47-case{scroll-margin-top:90px;min-width:0;border:1px solid #A7C5D948;border-radius:14px;overflow:hidden;background:#112333;box-shadow:0 20px 55px #0002}
#portofolio .xyny-lab47-case-5{--labcolor:#8AE6BB}#portofolio .xyny-lab47-case-4{--labcolor:#BDD3FF}#portofolio .xyny-lab47-case-6{--labcolor:#E9B3FB}#portofolio .xyny-lab47-case-7{--labcolor:#F5D59E}
#portofolio .xyny-lab47-case-flag{display:flex;justify-content:space-between;gap:10px;padding:20px 22px;font:750 9px/1.5 ui-monospace,monospace;color:var(--labcolor);letter-spacing:.09em}
#portofolio .xyny-lab47-preview{height:clamp(190px,20vw,275px);display:grid;place-items:start;overflow:hidden;background:#D7E9EC}
#portofolio .xyny-lab47-cover-img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block}
#portofolio .xyny-lab47-raw{display:flex;flex-direction:column;justify-content:center;width:100%;height:100%;background:linear-gradient(140deg,#0D202D,#26334A);padding:22px;gap:12px}
#portofolio .xyny-lab47-raw span{font:750 9px ui-monospace,monospace;color:#F8D79D;letter-spacing:.12em}
#portofolio .xyny-lab47-raw code{font:650 clamp(10px,1.2vw,14px)/1.3 ui-monospace,monospace;color:#E2F8EF;overflow-wrap:anywhere}
#portofolio .xyny-lab47-raw small{color:#BDCCDA;font-size:10px;line-height:1.5}
#portofolio .xyny-lab47-body{padding:27px clamp(19px,3vw,37px) 36px}
#portofolio .xyny-lab47-meta{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font:750 9px/1.4 ui-monospace,monospace;letter-spacing:.07em;color:var(--labcolor)}
#portofolio .xyny-lab47-body h4{font-size:clamp(24px,3vw,38px);line-height:1.14;letter-spacing:-.045em;color:#FFFFFF;margin:18px 0 21px}
#portofolio .xyny-lab47-body h4 small{display:block;font:500 15px/1.5 Arial,sans-serif;letter-spacing:0;color:#D1DBE8;margin:9px 0 0}
#portofolio .xyny-lab47-body>p{color:#BFD0DC;font-size:13px;line-height:1.85;min-height:72px}
#portofolio .xyny-lab47-results{border-left:2px solid var(--labcolor);padding:4px 0 4px 16px;margin:24px 0 24px;display:grid;gap:9px}
#portofolio .xyny-lab47-results b{font:800 9px ui-monospace,monospace;letter-spacing:.1em;color:var(--labcolor)}
#portofolio .xyny-lab47-results span{font-size:12px;line-height:1.8;color:#CAD6E1}
#portofolio .xyny-lab47-actions{display:flex;flex-wrap:wrap;align-items:center;gap:11px}
#portofolio .xyny-lab47-actions a{min-height:41px;display:inline-flex;align-items:center;justify-content:center;padding:10px 13px;text-decoration:none;font-size:11px;font-weight:800;line-height:1.3;border-radius:5px;transition:transform .15s}
#portofolio .xyny-lab47-actions a:hover{transform:translateY(-2px)}
#portofolio .xyny-lab47-report{background:var(--labcolor);color:#0A1A29}
#portofolio .xyny-lab47-small{color:#D5EBEF;border:1px solid #91ACBF6A;background:#192F40}
#portofolio .xyny-lab47-footer{display:flex;align-items:center;justify-content:space-between;gap:23px;margin-top:37px;border:1px solid #AACDDA57;border-radius:9px;background:#13293B;padding:20px 25px}
#portofolio .xyny-lab47-footer strong{display:block;color:#B2E8D8;font:800 10px/1.5 ui-monospace,monospace;letter-spacing:.11em}
#portofolio .xyny-lab47-footer p{font-size:12px;line-height:1.8;color:#B6CBD5;margin:8px 0 0}
#portofolio .xyny-lab47-footer>a{color:#EFFAFF;white-space:nowrap;font-size:12px;font-weight:800}
@media(max-width:900px){#portofolio .xyny-lab47-intro{grid-template-columns:1fr;gap:20px}#portofolio .xyny-lab47-metrics>div{padding:18px 13px}#portofolio .xyny-lab47-grid{gap:15px}}
@media(max-width:740px){#portofolio .xyny-lab47-grid{grid-template-columns:1fr}#portofolio .xyny-lab47-preview{height:230px}#portofolio .xyny-lab47-metrics{grid-template-columns:1fr 1fr}#portofolio .xyny-lab47-metrics>div:nth-child(3){border-left:0;border-top:1px solid #B6D7E744}#portofolio .xyny-lab47-metrics>div:nth-child(4){border-top:1px solid #B6D7E744}#portofolio .xyny-lab47-footer{flex-direction:column;align-items:flex-start}#portofolio .xyny-lab47-titlebar span:last-child{display:none}}
@media(max-width:430px){#portofolio .xyny-lab47-titlebar{font-size:9px}#portofolio .xyny-lab47-preview{height:195px}#portofolio .xyny-lab47-case-flag{font-size:8px;padding:15px}#portofolio .xyny-lab47-body h4{font-size:27px}#portofolio .xyny-lab47-actions{display:grid;grid-template-columns:1fr 1fr}#portofolio .xyny-lab47-actions a:first-child{grid-column:1/-1}}
@media(prefers-reduced-motion:reduce){#portofolio .xyny-lab47-actions a{transition:none}}
