:root{--bg:#07101d;--panel:#0c1828;--panel2:#112238;--line:#254059;--text:#eef6ff;--muted:#8ea6bd;--cyan:#43d3e8;--green:#58dfa2;--amber:#ffbd59;--red:#ff7d89;font-family:Inter,"Segoe UI",system-ui,sans-serif;color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 70% -15%,#12344d,transparent 34%),var(--bg);color:var(--text);min-height:100vh}button,input,select{font:inherit}.hidden{display:none!important}.login-shell{min-height:100vh;display:grid;place-items:center;padding:22px}.login-card{width:min(430px,100%);background:linear-gradient(145deg,#0e2033,#091523);border:1px solid var(--line);border-radius:18px;padding:30px;box-shadow:0 25px 70px rgba(0,0,0,.38)}.brand-mark,.logo{color:#06101c;background:var(--cyan);display:grid;place-items:center}.brand-mark{width:50px;height:50px;border-radius:14px;font-size:28px;margin-bottom:22px}.eyebrow{font-size:10px;letter-spacing:2px;color:var(--cyan);font-weight:800}.login-card h1{margin:5px 0 8px}.login-card p:not(.eyebrow){color:var(--muted);line-height:1.5;font-size:13px}.login-card input{margin:12px 0}.error{display:block;color:var(--red);font-size:11px;margin-top:10px}input,select{width:100%;background:#081522;color:var(--text);border:1px solid #2b4862;border-radius:8px;padding:10px;outline:0}input:focus,select:focus{border-color:var(--cyan)}button,.file-button{border:1px solid #31506a;background:#11243a;color:#dce9f5;border-radius:8px;padding:9px 13px;cursor:pointer;font-weight:700;font-size:12px}button:hover,.file-button:hover{filter:brightness(1.15)}button.primary,.primary{background:linear-gradient(135deg,#1f9fb7,#16758e);border-color:#3cc2d7;color:#fff}.login-card button{width:100%}header{position:sticky;top:0;z-index:10;height:68px;padding:0 max(20px,calc((100vw - 1280px)/2));display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:rgba(7,16,29,.9);backdrop-filter:blur(14px)}header>div{display:flex;align-items:center;gap:11px}.logo{width:34px;height:34px;border-radius:10px;font-size:19px}header strong,header small{display:block}header small{color:var(--muted);font-size:10px;margin-top:2px}header nav{display:flex;gap:8px}main{max-width:1280px;margin:auto;padding:28px 20px 70px}.hero{min-height:170px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);margin-bottom:22px}.hero h1{font-size:34px;margin:6px 0}.hero p:not(.eyebrow){color:var(--muted);max-width:760px;line-height:1.5}.host-badge{border:1px solid #2d6d54;color:var(--green);background:#0e2a22;border-radius:18px;padding:8px 12px;font-size:11px;white-space:nowrap}.upload-panel{background:linear-gradient(145deg,#0e1e31,#091625);border:1px solid #2b5368;border-radius:14px;padding:20px;margin-bottom:28px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:15px}.section-head h2{margin:0 0 4px;font-size:20px}.section-head p{margin:0;color:var(--muted);font-size:11px;max-width:760px;line-height:1.4}.file-button input{display:none}.empty{border:1px dashed #29465e;padding:30px;text-align:center;border-radius:9px;color:var(--muted);font-size:12px}.progress{padding:10px;border:1px solid #2d6473;background:#0a2730;color:var(--cyan);border-radius:8px;margin-bottom:10px}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:10px}table{width:100%;border-collapse:collapse;min-width:760px}th{text-align:left;color:#7996b0;text-transform:uppercase;font-size:9px;letter-spacing:1px;background:#102137;padding:10px}td{border-top:1px solid #1b3146;padding:10px;font-size:11px}td input[type=checkbox]{width:auto}.zip-name strong,.zip-name small{display:block}.zip-name small{color:var(--muted);margin-top:3px}.match-warning{color:var(--amber);font-size:9px;display:block;margin-top:4px}.upload-actions{display:flex;justify-content:flex-end;align-items:end;gap:10px;padding:12px}.upload-actions label{color:var(--muted);font-size:10px;width:220px}.upload-actions select{margin-top:5px}.project-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:13px}.project-card{background:linear-gradient(145deg,#0e1d30,#091522);border:1px solid var(--line);border-radius:12px;padding:16px}.project-card.service{border-left:3px solid var(--green)}.project-card.android{border-left:3px solid var(--amber)}.project-card.windows{border-left:3px solid #6e8dff}.project-card h3{margin:0 0 5px}.project-card .type{font-size:9px;letter-spacing:1px;color:var(--cyan);text-transform:uppercase}.project-card dl{display:grid;grid-template-columns:100px 1fr;gap:6px;margin:15px 0;font-size:10px}.project-card dt{color:var(--muted)}.project-card dd{margin:0;word-break:break-all}.card-actions{display:flex;gap:7px}.versions{margin-top:12px;border-top:1px solid var(--line);padding-top:8px;max-height:220px;overflow:auto}.version-row{padding:7px 0;border-bottom:1px solid #192e42}.version-row strong,.version-row span{display:block}.version-row span{color:var(--muted);font-size:9px;margin-top:2px}.toasts{position:fixed;right:18px;bottom:18px;display:grid;gap:8px}.toast{width:min(350px,calc(100vw - 36px));border:1px solid #2b526b;border-left:3px solid var(--cyan);background:#102238;padding:12px;border-radius:9px;box-shadow:0 15px 45px rgba(0,0,0,.35)}.toast.error{border-left-color:var(--red)}.toast strong,.toast span{display:block}.toast span{font-size:10px;color:var(--muted);margin-top:4px}@media(max-width:700px){header{height:auto;padding:11px 14px;align-items:flex-start}header nav{flex-wrap:wrap;justify-content:flex-end}header nav button{padding:7px 9px}.hero{align-items:flex-start;gap:15px;padding:20px 0}.hero h1{font-size:28px}.host-badge{display:none}.section-head{align-items:flex-start}.upload-actions{justify-content:stretch;flex-direction:column;align-items:stretch}.upload-actions label{width:auto}.project-grid{grid-template-columns:1fr}}
