:root {--bg:#f5f7fb;--surface:#fff;--ink:#17243d;--muted:#79869b;--line:#e4eaf3;--primary:#356de8;--primary-hover:#2255c6;--blue-light:#ebf2ff;--green:#168366;--green-light:#eaf8f0;--amber:#ab741e;--amber-light:#fff5e6;--shadow:0 7px 25px rgba(22,48,91,.035)}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;}body{font:14px/1.5 Inter,"Segoe UI",Arial,sans-serif;color:var(--ink);background:var(--bg);letter-spacing:-.012em}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #97b6fa;outline-offset:2px}.hidden{display:none!important}.wrap{max-width:1130px;padding:0 26px;margin:auto}.header{height:76px;background:#fff;border-bottom:1px solid var(--line)}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:12px}.brand-icon{width:39px;height:39px;display:grid;place-items:center;color:white;background:linear-gradient(135deg,#3974e9,#233c9d);border-radius:11px}.brand svg{width:21px;height:21px}.brand b{display:block;font-weight:820;letter-spacing:-.035em;font-size:16px;line-height:1.05}.brand small{display:block;color:#8b96a8;font-size:9px;font-weight:750;letter-spacing:.13em;margin-top:5px}.profile{display:flex;align-items:center;gap:10px}.userchip{display:flex;align-items:center;gap:9px}.avatar{width:34px;height:34px;background:#eaf1ff;color:#436dd7;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:800}.userchip strong{font-size:12px;display:block}.userchip small{display:block;font-size:10px;color:var(--muted)}.outline-btn{padding:9px 14px;border:1px solid var(--line);border-radius:9px;background:#fff;color:#5e6e87;font-weight:660;font-size:12px}.outline-btn:hover{border-color:#bed0f7;color:#315cc1}.eyebrow{font-size:11px;font-weight:830;letter-spacing:.12em;color:#5377bf;text-transform:uppercase}.main{padding:44px 0 78px}.intro{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.intro h1{font-size:31px;letter-spacing:-.055em;line-height:1.2;margin:8px 0 9px;font-weight:820}.intro p{font-size:13px;color:var(--muted);margin:0;max-width:640px}.intro .count-pill{background:#ebf2fe;color:#3669d1;border-radius:40px;padding:10px 14px;font-size:11px;font-weight:750;white-space:nowrap}.subtle-alert{display:flex;align-items:center;gap:9px;color:#5f7394;background:#eef4ff;border:1px solid #deebff;padding:12px 16px;border-radius:10px;font-size:11px;margin-top:24px}.subtle-alert svg{width:15px;height:15px;flex:none}.toolbar{display:flex;gap:12px;align-items:center;justify-content:space-between;margin:25px 0 14px;flex-wrap:wrap}.filters{display:flex;gap:5px;padding:4px;border-radius:10px;background:#eaf0f8}.filter-btn{border:0;background:transparent;color:#7b8da7;font-size:12px;font-weight:730;padding:9px 15px;border-radius:7px}.filter-btn.active{background:#fff;color:#3266d4;box-shadow:0 2px 9px #253f6612}.searchbox{position:relative;min-width:220px;flex:1;max-width:315px}.searchbox svg{position:absolute;top:11px;left:12px;color:#8593a6;width:16px;height:16px;pointer-events:none}.searchbox input{width:100%;height:38px;border:1px solid #dfe6f1;background:#fff;border-radius:9px;padding:0 13px 0 37px;color:#344760;outline:none}.searchbox input:focus{border-color:#9eb9f0}.list{display:grid;gap:13px}.appcard{background:#fff;border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow);padding:21px 23px;display:grid;grid-template-columns:54px minmax(0,1fr) 175px;gap:17px;align-items:start}.appicon{width:51px;height:51px;background:#eef2fd;color:#4069cc;border-radius:13px;display:grid;place-items:center;flex:none}.appicon.green{color:#0a9184;background:#e7f7f3}.appicon.amber{color:#b17721;background:#fff1dc}.appicon svg{height:26px;width:26px}.appinfo{min-width:0}.appname{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:0}.appname h2{font-size:15px;margin:0;letter-spacing:-.025em;font-weight:810}.pill{border-radius:6px;padding:4px 7px;font-size:9px;letter-spacing:.035em;font-weight:840;white-space:nowrap}.pill.stable{color:var(--green);background:var(--green-light)}.pill.test{color:var(--amber);background:var(--amber-light)}.appdesc{color:#8995a6;font-size:11px;margin:8px 0 11px}.metadata{display:flex;align-items:center;gap:14px;flex-wrap:wrap;color:#7e8ca3;font-size:11px}.metadata b{color:#4c5e7b;font-size:11px}.dot{height:4px;width:4px;border-radius:50%;background:#b6c3d3}.moreinfo{border:none;background:none;color:#3970da;font-size:11px;font-weight:760;padding:9px 0 0;text-align:left;display:flex;align-items:center;gap:5px}.moreinfo .chev{display:inline-block;transition:transform .15s ease}.moreinfo[aria-expanded="true"] .chev{transform:rotate(180deg)}.details{margin-top:12px;background:#f8faff;border:1px solid #ecf0f7;border-radius:8px;padding:12px 13px;color:#526784;font-size:11px;line-height:1.65}.appactions{display:flex;flex-direction:column;align-items:stretch;gap:7px;justify-content:center;align-self:stretch;border-left:1px solid #ecf0f5;padding-left:20px}.version{font-size:19px;font-weight:830;letter-spacing:-.04em;line-height:1.2}.version-label{font-size:10px;color:#94a0b0;margin-bottom:6px}.primary{border:none;border-radius:9px;background:var(--primary);color:#fff;font-size:12px;font-weight:780;padding:11px 15px;display:flex;align-items:center;justify-content:center;gap:8px;transition:background .12s}.primary:hover{background:var(--primary-hover)}.primary svg{width:16px;height:16px}.filehint{font-size:10px;color:#9ba6b5;text-align:center}.empty{padding:40px;background:#fff;border:1px dashed #cdd8e9;color:#73849d;border-radius:15px;text-align:center;font-size:13px}.footer{margin-top:35px;padding-top:22px;border-top:1px solid #e4eaf2;display:flex;justify-content:space-between;gap:10px;color:#99a4b3;font-size:10px}.toast{position:fixed;bottom:26px;right:26px;background:#233553;color:#fff;padding:13px 17px;border-radius:10px;box-shadow:0 10px 35px #2239573c;z-index:20;font-size:12px;max-width:335px}.login-screen{min-height:calc(100vh - 76px);display:grid;place-items:center;padding:36px 20px}.loginbox{background:#fff;border:1px solid #e4eaf3;border-radius:18px;width:min(420px,100%);padding:36px;box-shadow:0 15px 55px rgba(25,46,80,.07)}.loginbox h1{margin:11px 0 6px;letter-spacing:-.045em;font-weight:820;font-size:27px}.loginbox p{margin:0 0 25px;color:#8390a4;font-size:12px;line-height:1.65}.field{margin-bottom:15px}.field label{display:block;color:#52647d;font-size:11px;font-weight:720;margin-bottom:8px}.field input{width:100%;border:1px solid #dfe7f0;background:#f9fbff;border-radius:9px;height:44px;padding:0 13px;font-size:12px;color:#63738b}.loginbox .primary{width:100%;margin-top:7px;padding:13px}.login-note{font-size:10px;color:#a0adbd;line-height:1.6;margin-top:18px;text-align:center}.demo-tag{color:#8ca1c0;font-size:10px;font-weight:770;letter-spacing:.12em}.guest{display:flex;gap:7px;align-items:center;color:#8593a7;font-size:11px}.guest svg{height:15px;width:15px}.footer-note{color:#a2afc0;font-size:10px}.portal{display:none}.portal.visible{display:block}
@media(max-width:760px){.wrap{padding:0 16px}.header{height:70px}.intro{align-items:flex-start;flex-direction:column;gap:12px}.intro h1{font-size:27px}.main{padding:29px 0 55px}.appcard{grid-template-columns:49px minmax(0,1fr);padding:17px;gap:12px}.appicon{height:46px;width:46px}.appactions{grid-column:1/-1;border-left:none;border-top:1px solid #eff2f7;padding:14px 0 0;display:grid;grid-template-columns:1fr auto;align-items:end;gap:7px}.appactions .primary{grid-column:2;grid-row:1/3}.version-label{grid-row:1;grid-column:1}.version{grid-row:2;grid-column:1}.filehint{grid-column:1/-1;text-align:left}.toolbar{align-items:stretch}.searchbox{max-width:none;min-width:0;width:100%}.filters{width:100%;justify-content:space-between}.filter-btn{flex:1;padding:8px 6px}.userchip>div:nth-child(2){display:none}.footer{flex-direction:column;gap:8px}.subtle-alert{line-height:1.45}}

.icon-definitions{position:absolute;overflow:hidden;width:0;height:0}
a.primary{text-decoration:none}
a.primary:focus-visible{outline:3px solid #97b6fa;outline-offset:2px}
.login-error{color:#a23b38}
