@charset "UTF-8";
:root{color-scheme:dark;--bg:#0b0c12;--panel:#14151f;--panel2:#1b1c28;--line:#2b2c3c;--muted:#a6a9bd;--text:#f5f5fa;--red:#f04459;--red2:#c52243;--soft:#351b29;--green:#66d5ad;--amber:#eec282;--shadow:0 18px 60px #0003;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:15px}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);line-height:1.5}a{color:inherit}button,input,textarea,select{font:inherit}button,a,input,textarea,select{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #ffad8f;outline-offset:3px}button svg,.secure-label svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}h1,h2,h3,p{margin:0}h1{font-size:clamp(1.8rem,3vw,2.5rem);letter-spacing:-.045em;line-height:1.15}h2{font-size:1.2rem;letter-spacing:-.02em}h3{font-size:1rem}small{font-size:.8rem}button{border:0}button[hidden],[hidden]{display:none!important}.skip{position:fixed;top:-100px;left:10px;z-index:10;background:var(--text);color:var(--bg);padding:10px}.skip:focus{top:10px}
.app-shell{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100dvh}.sidebar{position:sticky;top:0;height:100dvh;background:linear-gradient(150deg,#17131d,#10111a 50%);border-right:1px solid var(--line);display:flex;flex-direction:column;padding:30px 20px 22px}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;margin-bottom:48px}.brand-mark{width:46px;height:46px;border:1px solid #ed476461;border-radius:14px;background:linear-gradient(145deg,#75233b,#251827);display:grid;place-items:center;position:relative;font-size:16px;font-weight:900;letter-spacing:-1px}.brand-mark span{position:absolute;right:5px;top:1px;color:#ff8897;font-size:15px}.brand strong{display:block;letter-spacing:-.5px;font-size:19px}.brand small{display:block;color:var(--muted);font-size:9px;letter-spacing:2.2px;margin-top:3px}.sidebar-body{flex:1}.nav-label{color:#777b91;font-size:9px;letter-spacing:1.5px;font-weight:700;margin:0 12px 13px}nav{display:grid;gap:7px}.nav-button{display:flex;align-items:center;gap:12px;padding:13px 14px;border-radius:11px;background:transparent;color:var(--muted);text-align:left;font-size:13px;border:1px solid transparent;position:relative}.nav-button:hover{background:#ffffff07;color:var(--text)}.nav-button[aria-current=page]{color:#fff;background:linear-gradient(90deg,#41202d,#251b29);border-color:#ef496332}.nav-button[aria-current=page]:before{content:"";position:absolute;left:-1px;top:15px;bottom:15px;width:3px;border-radius:3px;background:var(--red)}.sidebar-note{display:flex;align-items:flex-start;gap:9px;margin:40px 12px;color:#c8cad7;font-size:11px}.sidebar-note small{display:block;font-size:10px;margin-top:7px;line-height:1.6;color:#81869e}.status-dot{width:6px;height:6px;background:var(--green);border-radius:50%;flex-shrink:0;margin-top:6px}.sidebar-footer{border-top:1px solid var(--line);padding:18px 10px 0;color:#777c94;font-size:10px}.link-button{display:block;padding:5px 0;background:none;color:var(--muted);text-align:left;margin-top:8px;font-size:12px}.link-button:hover{color:var(--text)}.workspace{min-width:0}.topbar{height:76px;padding:0 42px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--muted)}.secure-label{display:flex;gap:8px;align-items:center;font-size:11px;color:#b7bace}.secure-label svg{width:16px;height:16px;color:var(--green)}main{padding:36px 42px;max-width:1540px;min-height:calc(100dvh - 135px)}.page-footer{padding:14px 42px;color:#777c94;font-size:10px;border-top:1px solid #ffffff07}.page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:28px}.eyebrow{display:block;color:#f47789;font-weight:750;font-size:10px;letter-spacing:1.6px;text-transform:uppercase;margin-bottom:9px}.page-heading p{color:var(--muted);font-size:13px;margin-top:10px;max-width:590px}.heading-actions,.actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.heading-actions{padding-top:4px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:10px;min-height:42px;padding:10px 16px;font-weight:650;font-size:12px;line-height:1.35;text-decoration:none;background:var(--panel2);color:var(--text);border:1px solid var(--line)}.btn:hover:not(:disabled){filter:brightness(1.15)}.btn-primary{background:linear-gradient(110deg,#ed435b,#c72648);border-color:#ed435b55;box-shadow:0 5px 18px #c2263f20;color:white}.btn-quiet{background:transparent}.btn-danger{background:#552130;border-color:#ff59775c}.btn-small{min-height:34px;padding:7px 11px;font-size:11px}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:25px 0}.stat{padding:20px 22px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(120deg,var(--panel),#11121a)}.stat strong{display:block;font-size:26px;letter-spacing:-1px}.stat span{color:var(--muted);font-size:11px}.stat-label{display:flex;align-items:center;gap:8px;margin-bottom:8px}.stat-label svg{width:16px;height:16px;color:#ab8e9d;fill:none;stroke:currentColor;stroke-width:1.6}.section-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:28px 0 16px}.section-row small{color:var(--muted)}.installation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.installation-card{border:1px solid var(--line);border-radius:16px;padding:23px;background:linear-gradient(150deg,#191923,var(--panel) 65%);min-width:0}.card-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.avatar{width:43px;height:43px;display:grid;place-items:center;font-size:15px;font-weight:700;border-radius:12px;background:linear-gradient(145deg,#41324c,#222c41);border:1px solid #ffffff10;color:#e6d9ef;flex-shrink:0}.card-identity{display:flex;gap:12px;align-items:center;min-width:0}.card-identity>div{min-width:0}.card-identity h3{overflow-wrap:anywhere}.url{display:block;color:var(--muted);font-size:11px;text-decoration:none;margin-top:3px;overflow-wrap:anywhere}.url:hover{text-decoration:underline}.badge{display:inline-flex;align-items:center;gap:5px;font-size:10px;font-weight:650;letter-spacing:.2px;border:1px solid #ffffff13;border-radius:30px;padding:4px 8px;white-space:nowrap;background:#ffffff07;color:#bcc0d1}.badge-good{color:#83dcb9;background:#1c362d;border-color:#4f947150}.badge-warn{color:var(--amber);background:#382e20;border-color:#aa875044}.badge-danger{color:#ff9ead;background:#3b202b;border-color:#ba435c44}.version-line{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin:20px 0;color:#9298af;font-size:11px}.version-line code{font-family:ui-monospace,monospace;font-size:10px;color:#c9cbd9;overflow-wrap:anywhere}.card-actions{border-top:1px solid var(--line);padding-top:16px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}details{font-size:12px;color:var(--muted);margin-top:14px}summary{cursor:pointer}details dl{font-size:11px;margin-bottom:0}dt{color:#bfc3d4;font-weight:600;margin-top:10px}dd{margin:4px 0 0;color:#939ab2;overflow-wrap:anywhere}.empty{padding:45px 25px;text-align:center;border:1px dashed #3b3c50;border-radius:16px;background:#13141c}.empty h2{margin:15px 0 8px}.empty p{font-size:13px;color:var(--muted);max-width:480px;margin:0 auto 20px}.empty-icon{margin:auto;width:50px;height:50px;display:grid;place-items:center;background:var(--panel2);border-radius:15px;color:#f18a9a}.empty-icon svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.5}
.panel{border:1px solid var(--line);background:var(--panel);border-radius:16px;padding:25px}.panel+.panel{margin-top:18px}.panel>p{color:var(--muted);font-size:13px;margin:8px 0 18px}.upload-zone{border:1px dashed #5e3748;border-radius:14px;background:radial-gradient(ellipse at top,#5b27302d,transparent 75%);padding:28px;text-align:center;position:relative}.upload-zone svg{width:29px;height:29px;color:#f18a9a;fill:none;stroke:currentColor;stroke-width:1.5;margin-bottom:12px}.upload-zone h2{font-size:16px}.upload-zone p{font-size:12px;color:var(--muted);margin:8px auto 18px;max-width:430px}.upload-zone input{display:block;max-width:100%;margin:0 auto 16px;color:var(--muted);font-size:12px}.upload-zone input::file-selector-button{font:inherit;background:var(--panel2);border:1px solid var(--line);color:var(--text);border-radius:8px;padding:9px 13px;margin-right:12px;cursor:pointer}.package-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:18px}.package-summary{display:flex;gap:8px;flex-wrap:wrap}.package-summary span{padding:7px 10px;background:var(--panel2);border-radius:8px;font-size:11px;color:#b9bed1}.package-orders{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:8px}.package-orders li{display:flex;gap:10px;align-items:center;justify-content:space-between;font-size:12px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;flex-wrap:wrap}.package-orders code{font-size:11px;overflow-wrap:anywhere}.order-number{background:#5b273b;color:#ffb6c1;width:24px;height:24px;border-radius:7px;display:inline-grid;place-items:center;font-size:10px;margin-right:8px}.select-toolbar{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:15px;flex-wrap:wrap}.select-toolbar p{font-size:12px;color:var(--muted)}.target-list{display:grid;gap:10px}.target{display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:14px;background:#11121b;border:1px solid var(--line);padding:17px;border-radius:13px;transition:border-color .15s,background .15s}.target:has(input:checked){border-color:#d7425c;background:#331c2b}.target input[type=checkbox]{width:18px;height:18px;accent-color:var(--red);margin:0}.target-name{font-weight:700;font-size:13px;cursor:pointer}.target p{font-size:11px;color:var(--muted);margin-top:4px}.target details{grid-column:2/-1;margin-top:0}.target .file-list{list-style:none;margin:8px 0 0;padding:0;max-height:180px;overflow:auto}.file-list li{font-family:ui-monospace,monospace;font-size:10px;overflow-wrap:anywhere;padding:5px 0;border-bottom:1px solid #ffffff08}.selection-footer{position:sticky;bottom:12px;display:flex;gap:20px;justify-content:space-between;align-items:center;padding:18px 20px;border:1px solid #5e3042;border-radius:14px;background:#211923f5;box-shadow:0 10px 40px #0007;margin-top:22px;z-index:2;backdrop-filter:blur(12px)}.selection-footer strong{display:block;font-size:13px}.selection-footer small{display:block;color:var(--muted);margin-top:3px;font-size:11px}.inline-message{padding:13px 16px;margin:15px 0;border-radius:10px;border:1px solid var(--line);background:#20212e;color:#c9cddc;font-size:12px;overflow-wrap:anywhere}.inline-message.error{border-color:#a54359;background:#391e2a;color:#ffbdc8}.inline-message.success{border-color:#336c57;background:#193129;color:#a1e3c7}.inline-message.warn{border-color:#7a623b;background:#342b21;color:#f0d2a4}.job-list{display:grid;gap:12px}.job{padding:21px;border:1px solid var(--line);border-radius:14px;background:var(--panel)}.job-head{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap}.job h3{font-size:14px}.job small{color:var(--muted);display:block;margin-top:4px}.job-meta{display:flex;flex-wrap:wrap;gap:16px;color:var(--muted);font-size:11px;margin:15px 0}.job-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.run-status{display:flex;gap:13px;align-items:center;border:1px solid #554038;background:#282019;padding:18px;border-radius:12px;margin-bottom:20px}.run-status p{font-size:12px;color:var(--muted);margin-top:3px}.result-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:13px 0;border-bottom:1px solid var(--line);font-size:12px}.result-row:last-child{border:0}.result-row>div{min-width:0}.result-row p{font-size:11px;color:var(--muted);margin-top:3px;overflow-wrap:anywhere}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:grid;gap:7px;align-content:start;font-size:12px;color:#d0d3df}.field.full{grid-column:1/-1}.field small{font-size:10px;color:var(--muted);line-height:1.5}.field input,.field textarea,.field select{width:100%;min-width:0;background:#0d1019;color:var(--text);border:1px solid #34384a;border-radius:9px;padding:11px 12px;min-height:43px;font-size:12px}.field textarea{resize:vertical;min-height:80px;font-family:ui-monospace,monospace;font-size:11px;line-height:1.6}.field input::placeholder,.field textarea::placeholder{color:#71778d}.form-actions{display:flex;gap:10px;margin-top:24px;align-items:center;flex-wrap:wrap}.auth-wrap{max-width:540px;margin:32px auto}.auth-wrap>.eyebrow{text-align:center}.auth-wrap>h1{text-align:center;font-size:30px}.auth-wrap>.intro{text-align:center;color:var(--muted);font-size:13px;margin:12px auto 28px;max-width:390px}.auth-wrap .panel{padding:29px}.auth-wrap .form-grid{grid-template-columns:1fr}.auth-wrap .btn-primary{width:100%}.setup-wrap{max-width:770px;margin:10px auto}.setup-steps{display:flex;gap:12px;margin:25px 0;font-size:11px;color:var(--muted)}.setup-steps span{border-bottom:2px solid #333849;padding-bottom:9px;flex:1}.setup-steps span.active{border-color:var(--red);color:var(--text)}.challenge{background:#0c1019;border:1px solid var(--line);padding:15px;border-radius:10px;margin:15px 0;overflow-wrap:anywhere}.challenge code{font-size:12px;color:#ffc1cb;word-break:break-all}.step-list{padding-left:20px;color:var(--muted);font-size:13px;line-height:1.8}.setup-explainer{margin-top:15px;font-size:11px;color:var(--muted)}.requirements{list-style:none;padding:0;margin:20px 0;display:grid;gap:9px;font-size:12px;color:var(--muted)}.requirements li{display:flex;align-items:center;gap:10px}.requirements .status-dot{margin-top:0}.initial-loading{display:grid;justify-content:center;justify-items:center;gap:15px;padding:100px 20px;color:var(--muted);font-size:13px}.loader{width:25px;height:25px;border:2px solid #6c2c3c;border-top-color:#ff6d86;border-radius:50%;display:inline-block;flex-shrink:0;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.notice{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);max-width:min(90vw,650px);border:1px solid #67404b;background:#241b27;box-shadow:var(--shadow);padding:15px 22px;border-radius:12px;font-size:13px;z-index:30}.notice.error{border-color:#ce4a64;color:#ffc2ce}.notice.success{border-color:#43856c;color:#a3e2cb}
dialog{color:var(--text);background:linear-gradient(140deg,#211924,#12141e);border:1px solid #67404b;border-radius:20px;box-shadow:0 35px 120px #0008;padding:0;max-width:min(650px,calc(100vw - 30px));width:650px;max-height:calc(100dvh - 30px);overflow:auto}dialog::backdrop{background:#070911c7;backdrop-filter:blur(5px)}.dialog-inner{padding:30px}.dialog-inner h2{font-size:22px;margin-bottom:10px}.dialog-inner>p{color:var(--muted);font-size:13px;margin-bottom:18px}.dialog-inner .confirm-list{padding:14px 18px 14px 35px;background:#0d1018;border:1px solid var(--line);border-radius:11px;font-size:13px;max-height:220px;overflow:auto;margin:18px 0}.confirm-list li{padding:5px}.dialog-close{position:absolute;right:14px;top:12px;background:transparent;color:var(--muted);width:32px;height:32px;display:grid;place-items:center;border-radius:8px;font-size:22px}.noscript{position:fixed;inset:30px;background:#221a28;padding:30px;z-index:100;border:1px solid var(--red)}
@media(min-width:1550px){main{padding-top:46px}.installation-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1100px){.app-shell{grid-template-columns:210px minmax(0,1fr)}.sidebar{padding:25px 14px}.topbar{padding:0 25px}main{padding:28px 25px}.page-heading{flex-direction:column}.installation-grid{grid-template-columns:1fr}.page-footer{padding:14px 25px}.heading-actions{width:100%}.stat{padding:17px}}
@media(max-width:700px){.app-shell{display:block}.sidebar{position:relative;width:100%;height:auto;padding:18px 18px 0;border-right:0;border-bottom:1px solid var(--line)}.brand{margin-bottom:16px;gap:10px}.brand-mark{width:36px;height:36px;border-radius:11px}.brand strong{font-size:17px}.brand small{font-size:8px}.nav-label,.sidebar-note,.sidebar-footer>span{display:none}.sidebar-body{flex:initial}nav{display:flex;gap:6px;margin-bottom:13px;overflow-x:auto}.nav-button{padding:10px 9px;justify-content:center;font-size:11px;gap:6px;flex:1;white-space:nowrap}.nav-button svg{width:16px;height:16px}.nav-button[aria-current=page]:before{left:12px;right:12px;top:auto;bottom:-1px;height:2px;width:auto}.sidebar-footer{position:absolute;right:18px;top:16px;border:0;padding:0}.sidebar-footer .link-button{font-size:10px}.topbar{height:46px;padding:0 18px;font-size:10px}.secure-label{font-size:9px;gap:5px}main{padding:25px 18px;min-height:calc(100dvh - 245px)}.page-heading{gap:17px;margin-bottom:22px}.page-heading p{font-size:12px}.page-heading h1{font-size:28px}.heading-actions{gap:8px}.heading-actions .btn{flex:1;font-size:11px;padding:9px}.stats{gap:8px;margin:22px 0}.stat{padding:13px 10px;border-radius:11px}.stat strong{font-size:22px}.stat span{font-size:9px}.stat-label{gap:5px;margin-bottom:5px}.stat-label svg{display:none}.installation-card{padding:18px}.card-top{gap:8px}.card-identity h3{font-size:13px}.card-identity{gap:10px}.avatar{width:35px;height:35px;border-radius:10px;font-size:12px}.badge{font-size:9px;padding:4px 7px}.url{font-size:10px}.version-line{margin:16px 0}.card-actions{gap:9px}.card-actions .btn{flex:1;font-size:10px}.panel{padding:18px}.upload-zone{padding:22px 14px}.upload-zone input{font-size:10px}.form-grid{grid-template-columns:1fr;gap:15px}.field.full{grid-column:auto}.selection-footer{bottom:10px;padding:14px;gap:12px;flex-direction:column;align-items:stretch}.selection-footer .btn{width:100%}.target{padding:14px 11px;gap:10px;grid-template-columns:18px minmax(0,1fr)}.target>.badge{grid-column:2;margin-top:-5px;justify-self:start}.target details{grid-column:2}.target-name{font-size:12px}.target p{font-size:10px}.package-head{flex-direction:column}.package-orders li{padding:10px;gap:6px}.package-orders code{font-size:10px}.package-summary span{font-size:10px}.select-toolbar{align-items:flex-start}.select-toolbar .actions{gap:6px}.select-toolbar .btn-small{font-size:10px;padding:6px 8px}.section-row{margin-top:24px}.section-row h2{font-size:15px}.auth-wrap{margin:15px auto}.auth-wrap .panel{padding:20px}.auth-wrap>h1{font-size:26px}.dialog-inner{padding:25px 20px}.dialog-inner h2{font-size:20px;padding-right:20px}.dialog-inner .actions .btn{flex:1}.form-actions .btn{flex:1}.page-footer{padding:15px 18px;font-size:9px}.setup-steps{gap:9px;font-size:10px}.notice{bottom:14px;font-size:12px;padding:13px 16px}.result-row{align-items:flex-start}.result-row>div{max-width:70%}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
/* Grid alignment keeps the checkbox with its actual installation label. */
.target{grid-template-columns:minmax(0,1fr) auto}.target-name{display:flex;gap:13px;align-items:center;min-width:0}.target-name>span{min-width:0}.target-name strong,.target-name small,.confirm-list strong,.confirm-list small{display:block}.target-name small,.confirm-list small{font-size:10px;font-weight:400;color:var(--muted);margin-top:5px;overflow-wrap:anywhere}.target details,.target>.inline-message{grid-column:1/-1}.target .file-list li{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.target .file-list li>span:last-child{color:var(--muted)}.run-status{display:block}.result-row{flex-wrap:wrap}.result-row>p{width:100%;margin:0}.job h2{font-size:17px}.job-head p{font-size:12px;color:var(--muted);margin-top:6px}.installation-card details code{font-size:10px;overflow-wrap:anywhere}.package-orders li>span:nth-child(2){flex:1;min-width:0;overflow-wrap:anywhere}.upload-zone .field{margin:16px auto 0;text-align:left;max-width:480px}.upload-zone .field input{margin:0 0 18px}.form-actions{clear:both}
@media(max-width:700px){.target{grid-template-columns:minmax(0,1fr)}.target>.badge{grid-column:1;margin-left:31px;margin-top:0}.target details{grid-column:1}.run-status h2{font-size:17px}.target-name{gap:12px}.target-name input{flex-shrink:0}}
.brand-mark{background:transparent;border:0;box-shadow:none}.brand-mark img{display:block;width:100%;height:100%;object-fit:contain}

.path-suggestions{margin:0;padding:13px 15px;background:#151521;border:1px solid var(--line);border-radius:12px}.path-suggestions[open]{display:grid;gap:13px}.path-suggestions summary{font-size:12px;color:#d4d6e4}.path-note{font-size:11px;color:var(--muted);line-height:1.6;margin:9px 0;overflow-wrap:anywhere}.path-suggestions .btn{justify-self:start}.access-description{font-size:13px;color:var(--muted);margin-bottom:20px}.access-close{margin-top:20px}a[aria-disabled=true]{opacity:.55;pointer-events:none}.path-suggestions .field select{font-family:ui-monospace,monospace;font-size:11px}
