:root{--lab-bg:#eef3f7;--lab-panel:#fff;--lab-panel-muted:#f7fafc;--lab-text:#17202a;--lab-muted:#667280;--lab-border:#d9e2ea;--lab-accent:#116466;--lab-accent-dark:#0b4b4d;--lab-warning:#a85718;--lab-error:#a43a2f;--lab-shadow:0 18px 45px rgba(22,50,79,.1)}*{box-sizing:border-box}body.lab-body{background:var(--lab-bg);color:var(--lab-text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;margin:0;min-height:100vh}body.lab-body.is-login{align-items:center;background:linear-gradient(180deg,#f7f9fc,#edf2fb);display:grid;min-height:100svh;padding:max(1rem,env(safe-area-inset-top)) max(1rem,env(safe-area-inset-right)) max(1rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left));place-items:center}.lab-body.is-loading [data-app-view],.lab-body.is-loading [data-login-view]{visibility:hidden}.lab-shell{min-height:100vh;width:100%}body.lab-body.is-login .lab-shell{min-height:auto;width:min(440px,100%)}.lab-login{display:grid;min-height:100vh;padding:1.25rem;place-items:center}body.lab-body.is-login .lab-login{min-height:auto;padding:0}body.lab-body.is-login .auth-shell{position:relative;width:min(440px,100%);z-index:1}.lab-login-card{background:var(--color-surface,#fff);border:1px solid rgba(122,132,148,.28);border-radius:16px;box-shadow:0 22px 54px rgba(29,50,82,.14);display:grid;gap:1.05rem;max-width:100%;overflow:hidden;padding:clamp(1.25rem,4vw,1.8rem);position:relative;width:min(430px,100%)}body.lab-body.is-login .auth-card:after{background:linear-gradient(180deg,rgba(47,36,131,.045),transparent 34%);content:"";inset:0;pointer-events:none;position:absolute}body.lab-body.is-login .auth-brand{align-items:center;display:flex;justify-content:center;padding:.1rem 0 .25rem;position:relative;z-index:1}body.lab-body.is-login .auth-logo-horizontal{height:auto;max-height:78px;max-width:min(265px,78vw);-o-object-fit:contain;object-fit:contain;width:min(265px,78vw)}body.lab-body.is-login .auth-form{display:grid;gap:.95rem;position:relative;z-index:1}body.lab-body.is-login .auth-status{background:var(--color-success-bg);border:1px solid rgba(34,197,94,.22);border-radius:12px;font-weight:700;margin-top:0;padding:.8rem .9rem}body.lab-body.is-login .auth-status.is-error{background:var(--color-danger-bg);border-color:rgba(176,0,32,.24)}body.lab-body.is-login .pin-panel{background:#f8fafc;border-color:rgba(122,132,148,.26);border-radius:14px;box-shadow:none;gap:.9rem;max-width:100%;padding:1rem;width:100%}body.lab-body.is-login .pin-title{color:var(--color-neutral-5);font-size:.73rem;letter-spacing:.12em}body.lab-body.is-login .pin-display{gap:.5rem;max-width:100%;width:100%}body.lab-body.is-login .pin-slot{background:#fff;border-radius:10px;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.85),0 4px 12px rgba(29,50,82,.06);height:clamp(48px,8vh,58px)}body.lab-body.is-login .pin-keypad{gap:.55rem;max-width:100%;width:100%}body.lab-body.is-login .pin-key{background:#fff;border-radius:10px;box-shadow:0 3px 10px rgba(29,50,82,.08);font-size:1.2rem;min-height:clamp(50px,8.2vh,62px);min-width:0;padding:.55rem 0;width:100%}body.lab-body.is-login .pin-key.is-delete{background:#fff7f7;font-size:.78rem}body.lab-body.is-login .btn{background:linear-gradient(120deg,var(--color-primary-gradient-start,#5145b5),var(--color-primary-gradient-end,#2f2482));border:1px solid transparent;border-radius:10px;box-shadow:0 14px 28px rgba(36,26,106,.24);color:var(--color-text-inverse,#fff);cursor:pointer;font-weight:800;min-height:48px;padding:.95rem 1rem;width:100%}body.lab-body.is-login .btn:hover{filter:brightness(.97);transform:translateY(-1px)}body.lab-body.is-login .btn:active{box-shadow:0 12px 24px rgba(36,26,106,.2);transform:translateY(0)}.lab-app{display:grid;gap:1rem;margin:0 auto;max-width:1220px;padding:1rem}.lab-topbar{align-items:center;background:var(--lab-panel);border:1px solid var(--lab-border);border-radius:8px;box-shadow:var(--lab-shadow);display:flex;gap:1rem;justify-content:space-between;min-height:62px;padding:.75rem 1rem}.lab-brand,.lab-session{align-items:center;display:inline-flex;gap:.65rem;min-width:0}.lab-brand{color:var(--lab-text);font-size:1rem;font-weight:850;text-decoration:none}.lab-brand img{height:34px;width:34px}.lab-session{color:var(--lab-muted);font-size:.9rem;font-weight:750}.primary-action,.secondary-btn{border-radius:8px;cursor:pointer;font:inherit;font-weight:800;min-height:40px;padding:.55rem .85rem}.secondary-btn{background:var(--lab-panel-muted);border:1px solid var(--lab-border);color:var(--lab-text)}.primary-action{background:var(--lab-accent);border:1px solid var(--lab-accent);color:#fff;min-width:112px}.primary-action:disabled,.secondary-btn:disabled{cursor:not-allowed;opacity:.62}.secondary-btn:focus-visible,.secondary-btn:hover{border-color:var(--lab-accent)}.primary-action:focus-visible,.primary-action:hover{background:var(--lab-accent-dark);border-color:var(--lab-accent-dark)}.lab-view-tabs{align-items:center;background:var(--lab-panel);border:1px solid var(--lab-border);border-radius:8px;box-shadow:var(--lab-shadow);display:inline-flex;gap:.4rem;padding:.35rem;width:-moz-fit-content;width:fit-content}.package-tab,.view-tab{border-radius:7px;cursor:pointer;font:inherit;font-size:.86rem;font-weight:850;min-height:38px;padding:.5rem .75rem}.view-tab{background:transparent;border:1px solid transparent;color:var(--lab-muted)}.view-tab.is-active{background:var(--lab-accent);border-color:var(--lab-accent);color:#fff}.package-card,.packages-panel,.results-panel,.search-panel{background:var(--lab-panel);border:1px solid var(--lab-border);border-radius:8px;box-shadow:var(--lab-shadow);padding:1rem}.section-heading{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem}.eyebrow{color:var(--lab-muted);font-size:.72rem;font-weight:850;letter-spacing:.08em;margin:0 0 .18rem;text-transform:uppercase}.section-heading h1{color:var(--lab-text);font-size:1.55rem;line-height:1.1;margin:0}.results-summary,.status-text{color:var(--lab-muted);font-size:.9rem;font-weight:750;margin:0}.status-text.is-error{color:var(--lab-error)}.status-text.is-success{color:var(--lab-accent-dark)}.search-form{align-items:end;display:grid;gap:.75rem;grid-template-columns:minmax(0,1fr) auto}.search-form label{display:grid;gap:.35rem}.search-form span{color:var(--lab-muted);font-size:.78rem;font-weight:850;letter-spacing:.04em;text-transform:uppercase}.search-form input{background:var(--lab-panel-muted);border:1px solid var(--lab-border);border-radius:8px;color:var(--lab-text);font:inherit;font-size:1rem;min-height:44px;padding:.65rem .8rem;width:100%}.primary-action:focus-visible,.search-form input:focus,.secondary-btn:focus-visible{outline:3px solid rgba(17,100,102,.18);outline-offset:2px}.results-panel{display:grid;gap:.75rem}.packages-panel{display:grid;gap:1rem}.package-tabs{display:flex;flex-wrap:wrap;gap:.45rem}.package-tab{background:var(--lab-panel-muted);border:1px solid var(--lab-border);color:var(--lab-text)}.package-tab.is-active{background:#e9f5f3;border-color:#9ccfc5;color:var(--lab-accent-dark)}.packages-summary{color:var(--lab-muted);font-size:.9rem;font-weight:750}.packages-list{display:grid;gap:.85rem}.package-card{box-shadow:none;display:grid;gap:.75rem;padding:0}.package-header{align-items:center;background:var(--lab-panel-muted);border-bottom:1px solid var(--lab-border);border-radius:8px 8px 0 0;display:flex;gap:.75rem;justify-content:space-between;padding:.8rem}.package-title{color:var(--lab-text);font-size:1rem;font-weight:900;margin:0}.package-subtitle{color:var(--lab-muted);font-size:.78rem;font-weight:750;margin:.18rem 0 0}.package-action{align-items:center;display:inline-flex;gap:.45rem;white-space:nowrap}.package-body{padding:0 .8rem .8rem}.results-table-wrap{border:1px solid var(--lab-border);border-radius:8px;overflow:auto}.results-table{border-collapse:collapse;min-width:1080px;width:100%}.package-table{min-width:900px}.results-table td,.results-table th{border-bottom:1px solid var(--lab-border);font-size:.84rem;padding:.7rem .75rem;text-align:left;vertical-align:top}.results-table th{background:var(--lab-panel-muted);color:var(--lab-muted);font-size:.72rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.results-table tr:last-child td{border-bottom:0}.primary-line{color:var(--lab-text);font-weight:850}.secondary-line{color:var(--lab-muted);font-size:.78rem;font-weight:700;margin-top:.18rem}.status-pill{background:#e9f5f3;border:1px solid #c8e5df;border-radius:999px;color:var(--lab-accent-dark);display:inline-flex;font-size:.72rem;font-weight:850;margin-bottom:.25rem;max-width:100%;min-height:26px;padding:.3rem .55rem}.empty-row td{font-weight:750}.empty-row td,.empty-state{color:var(--lab-muted);padding:1rem}.empty-state{background:var(--lab-panel-muted);border:1px dashed var(--lab-border);border-radius:8px;font-weight:800}@media (max-width:720px){.lab-topbar,.package-header,.search-form,.section-heading{align-items:stretch;display:grid}.lab-view-tabs{display:grid;grid-template-columns:1fr 1fr;width:100%}.lab-session{justify-content:space-between}.package-action,.primary-action{width:100%}}@media (max-width:560px){body.lab-body.is-login{overflow-x:hidden;padding:max(.75rem,env(safe-area-inset-top)) max(0rem,env(safe-area-inset-right)) max(.75rem,env(safe-area-inset-bottom)) max(0rem,env(safe-area-inset-left));place-items:start center}body.lab-body.is-login .auth-shell,body.lab-body.is-login .lab-shell{max-width:calc(100vw - 1.5rem);width:calc(100vw - 1.5rem)}body.lab-body.is-login .auth-card{min-width:0;padding:1.15rem}body.lab-body.is-login .auth-form,body.lab-body.is-login .pin-display,body.lab-body.is-login .pin-keypad,body.lab-body.is-login .pin-panel{min-width:0}}@media (max-height:640px),(max-width:380px){body.lab-body.is-login .auth-card{gap:.75rem;padding:.95rem}body.lab-body.is-login .auth-logo-horizontal{max-height:62px;max-width:min(220px,76vw);width:min(220px,76vw)}body.lab-body.is-login .pin-panel{gap:.6rem;padding:.75rem}body.lab-body.is-login .pin-slot{height:42px}body.lab-body.is-login .pin-keypad{gap:.4rem}body.lab-body.is-login .pin-key{font-size:1.05rem;min-height:43px}}