.panel{padding:clamp(1rem,2.2vw,1.5rem);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm)}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.panel-head h2{margin:0;font-size:1.05rem}.panel-head>a,.panel-head>span{color:var(--cyan-dark);font-size:.78rem;font-weight:700}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1rem}.metric-card{display:grid;min-height:150px;padding:1.2rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.metric-card>span{color:var(--muted);font-size:.75rem;font-weight:700}.metric-card strong{align-self:end;font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2.2rem);letter-spacing:-.04em}.metric-card small{color:var(--muted)}.metric-card--accent{border-color:transparent;background:var(--ink-900);color:#fff;box-shadow:var(--shadow)}.metric-card--accent>span,.metric-card--accent small{color:#9db2bd}.status-pill{display:inline-flex;align-items:center;width:max-content;padding:.4rem .7rem;border-radius:999px;font-size:.72rem;font-weight:700;text-transform:capitalize}.status-pill--safe{background:#dcf7ef;color:#0b7762}.status-pill--warning{background:#fff0d4;color:#8a5a00}.status-pill--neutral{background:var(--surface-soft);color:var(--muted)}.live-label{display:flex;align-items:center;gap:.45rem;color:var(--teal-dark);font-size:.73rem;font-weight:700}.live-label i{width:7px;height:7px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 4px rgba(68,225,189,.12);animation:pulse 1.8s ease-in-out infinite}@keyframes pulse{50%{box-shadow:0 0 0 8px rgba(68,225,189,0)}}.chart-empty,.mesh-empty,.empty-compact,.drive-empty{display:grid;place-content:center;justify-items:center;gap:.35rem;text-align:center;color:var(--muted)}.chart-empty{min-height:210px}.chart-empty strong,.mesh-empty strong,.empty-compact strong,.drive-empty h2{color:var(--text)}.capacity-chart{width:100%;min-height:210px}.activity-list{display:grid;gap:.85rem;margin:0;padding:0;list-style:none}.activity-list li{display:flex;align-items:center;gap:.7rem}.activity-list li div{display:flex;flex:1;justify-content:space-between;gap:1rem}.activity-list strong{font-size:.84rem;text-transform:capitalize}.activity-list time{color:var(--muted);font-size:.75rem}.event-dot,.status-dot{display:inline-block;width:8px;height:8px;margin-right:.4rem;border-radius:50%;background:var(--cyan)}.status-dot--available{background:var(--teal)}.status-dot--failed,.status-dot--degraded{background:var(--danger)}.tasks-panel{margin-top:1rem}.task-row{display:grid;grid-template-columns:minmax(180px,1fr) 2fr;align-items:center;gap:1rem;padding:.8rem 0;border-top:1px solid var(--line)}.task-row>div{display:grid}.task-row span{color:var(--muted);font-size:.75rem}progress{width:100%;height:8px;border:0;border-radius:8px;overflow:hidden}progress::-webkit-progress-bar{background:var(--surface-soft)}progress::-webkit-progress-value{background:linear-gradient(90deg,var(--cyan),var(--teal))}.dialog{width:min(480px,calc(100vw - 2rem));padding:1.3rem;border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.dialog::backdrop{background:rgba(5,12,22,.65);backdrop-filter:blur(3px)}.dialog form{display:grid;gap:1rem}.dialog-head{display:flex;justify-content:space-between}.dialog-head h2{margin:0}.dialog-head button{border:0;background:none;color:var(--muted)}
@media(max-width:1050px){.metric-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.metric-grid{grid-template-columns:1fr 1fr;gap:.7rem}.metric-card{min-height:126px;padding:1rem}.metric-card strong{font-size:1.45rem}.task-row{grid-template-columns:1fr}.panel{border-radius:18px}}

.file-task-stack{position:fixed;z-index:120;right:clamp(1rem,2.5vw,2rem);bottom:clamp(1rem,2.5vw,2rem);display:grid;width:min(430px,calc(100vw - 2rem));gap:.65rem}
.upload-status{position:relative;width:100%;padding:1.15rem;border:1px solid rgba(107,221,228,.28);border-radius:20px;background:#071522;color:#eaf4f6;box-shadow:0 28px 70px rgba(0,0,0,.34)}
.upload-status__head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}
.upload-status__head>div{display:grid;min-width:0;gap:.15rem}
.upload-status__head span{color:#76dfe5;font-size:.66rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.upload-status__head strong{overflow:hidden;font-size:.96rem;text-overflow:ellipsis;white-space:nowrap}
.upload-status__head b{font-family:var(--font-display);font-size:1.55rem;letter-spacing:-.05em}
.upload-status>progress{height:7px;margin:.9rem 0 .55rem;background:#162838}
.upload-status>progress::-webkit-progress-bar{background:#162838}
.upload-status>progress::-webkit-progress-value{background:linear-gradient(90deg,var(--cyan),var(--teal))}
.upload-status>progress::-moz-progress-bar{background:linear-gradient(90deg,var(--cyan),var(--teal))}
.upload-status__meta{display:flex;justify-content:space-between;gap:1rem;color:#9cb0b9;font-size:.7rem}
.upload-status__meta span:last-child{overflow:hidden;text-align:right;text-overflow:ellipsis;white-space:nowrap}
.upload-stages{display:grid;grid-template-columns:repeat(4,1fr);gap:.35rem;margin:1rem 0;padding:0;list-style:none}
.upload-stages li{position:relative;display:grid;justify-items:center;gap:.35rem;color:#607985;font-size:.62rem;font-weight:700}
.upload-stages li::before{content:"";position:absolute;z-index:-1;top:4px;right:50%;left:-50%;height:1px;background:#223847}
.upload-stages li:first-child::before{display:none}
.upload-stages i{width:9px;height:9px;border:2px solid #46616d;border-radius:50%;background:#071522}
.upload-stages .is-active,.upload-stages .is-done{color:#cce7e9}
.upload-stages .is-active i{border-color:var(--cyan);background:var(--cyan);box-shadow:0 0 0 5px rgba(53,217,230,.12)}
.upload-stages .is-done i{border-color:var(--teal);background:var(--teal)}
.upload-stages .is-done::before,.upload-stages .is-active::before{background:var(--teal)}
.upload-status__foot{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:.8rem;border-top:1px solid rgba(146,177,188,.15)}
.upload-status__foot>span{max-width:285px;color:#8fa5ae;font-size:.68rem;line-height:1.45}
.upload-status__foot button{flex:0 0 auto;padding:.4rem 0;border:0;background:transparent;color:#8fdfe3;font-size:.68rem;font-weight:750}
.upload-status--failed{border-color:rgba(217,85,98,.5)}
.upload-status--cancelled{border-color:rgba(255,190,89,.45)}
.upload-status--failed .upload-status__head span,.upload-status--failed .upload-status__foot button{color:#ff9fa8}
.upload-status--complete{border-color:rgba(68,225,189,.5)}
.download-stages{grid-template-columns:repeat(5,1fr)}
@media(max-width:600px){.file-task-stack{right:.75rem;bottom:.75rem;width:calc(100vw - 1.5rem)}.upload-status{padding:1rem;border-radius:17px}.upload-status__meta{display:grid;gap:.15rem}.upload-status__meta span:last-child{text-align:left}.upload-status__foot>span{max-width:230px}}

@media(min-width:901px){.file-row{grid-template-columns:minmax(230px,1.45fr) minmax(210px,1.15fr) .55fr minmax(190px,1fr) .9fr}}
