You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1 lines
18 KiB
1 lines
18 KiB
:root{--bg: #f6f8fb;--bg-deep: #eef2f6;--surface: rgba(255, 255, 255, .84);--surface-strong: rgba(255, 255, 255, .98);--surface-soft: rgba(248, 250, 252, .94);--ink: #111827;--muted: #6b7280;--accent: #2563eb;--accent-strong: #1e40af;--success: #0f9f6e;--warning: #d97706;--danger: #dc2626;--border: rgba(17, 24, 39, .08);--border-strong: rgba(17, 24, 39, .12);--shadow: 0 20px 48px rgba(15, 23, 42, .08);--shadow-soft: 0 8px 24px rgba(15, 23, 42, .05)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;color:var(--ink);background:radial-gradient(circle at top left,rgba(37,99,235,.06),transparent 20%),linear-gradient(180deg,#f8fafc,#f4f7fb 52%,#eef2f6);font-family:Manrope,Segoe UI,Helvetica Neue,Arial,sans-serif;line-height:1.45}button,input,select,textarea,iframe,video{font:inherit}a{color:inherit;text-decoration:none}button{border:1px solid transparent;border-radius:12px;padding:.72rem .95rem;cursor:pointer;color:#f8fbff;background:linear-gradient(180deg,#2d6df6 0%,var(--accent-strong) 100%);box-shadow:0 8px 18px #2563eb24;transition:transform .14s ease,opacity .14s ease,box-shadow .14s ease}button:hover{transform:translateY(-1px);box-shadow:0 10px 20px #2563eb2e}button:disabled{opacity:.6;cursor:wait}input,select,textarea{width:100%;border:1px solid var(--border);border-radius:12px;padding:.78rem .92rem;background:var(--surface-strong);color:var(--ink)}textarea{resize:vertical;min-height:180px;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.88rem}.ghost-button,.crumb-button,.tree-toggle,.tree-label{color:var(--ink);background:#fffc;border:1px solid var(--border);box-shadow:none}.danger-button{background:linear-gradient(180deg,#ef4444 0%,var(--danger) 100%);box-shadow:0 10px 22px #dc262624}.eyebrow,.metric-label{display:block;text-transform:uppercase;letter-spacing:.12em;font-size:.68rem;font-weight:700;color:var(--muted)}.app-shell{min-height:100vh;display:grid;grid-template-columns:208px minmax(0,1fr);gap:12px;padding:14px;max-width:1480px;margin:0 auto}.sidebar{display:grid;align-content:start;gap:.65rem;padding:.85rem;border:1px solid var(--border);border-radius:20px;background:#ffffffad;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);box-shadow:var(--shadow-soft)}.brand-block{display:grid;gap:.68rem}.brand-block-compact{gap:.2rem}.brand-block h1,.topbar h2,.section-heading h2,.section-heading h3,.panel-toolbar h3{margin:.3rem 0 0}.brand-block h1{font-size:clamp(1.2rem,1.8vw,1.8rem);line-height:1.06;max-width:none;overflow-wrap:anywhere}.brand-block p,.sidebar-card p,.login-hero p,.detail-empty p,.preview-fallback p,.dropzone p{color:var(--muted);line-height:1.5;margin:0}.main-nav{display:grid;gap:.22rem;margin:.1rem 0 .45rem}.nav-link{padding:.6rem .72rem;border-radius:10px;color:var(--ink);font-weight:600;font-size:.95rem}.nav-link.active{background:linear-gradient(180deg,#2563eb1f,#2563eb0a);border:1px solid rgba(37,99,235,.14);color:#0f3ca7}.sidebar-card,.panel,.login-card,.login-hero,.summary-card{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.sidebar-card{padding:.8rem .86rem .9rem;border-radius:16px;margin-top:auto}.workspace{padding:.1rem 0}.topbar{display:flex;align-items:center;justify-content:space-between;gap:.8rem;padding:.1rem .15rem}.topbar h2{font-size:1.35rem;line-height:1.05}.topbar-title{display:grid;gap:.1rem}.topbar-actions,.toolbar-group{display:flex;gap:.55rem;flex-wrap:wrap}.topbar-actions .ghost-button{border-radius:999px;background:#ffffffeb}.workspace-content{margin-top:.9rem;padding-bottom:1.5rem}.login-page{min-height:100vh;display:grid;grid-template-columns:1.15fr minmax(320px,460px);gap:1.5rem;padding:1.5rem}.login-hero,.login-card{border-radius:28px;padding:2rem}.hero-metrics{margin-top:2rem;display:grid;gap:1rem}.hero-metrics article{padding:1rem 1.1rem;border-radius:18px;background:#ffffff85;border:1px solid var(--border)}.stack-form,.stack-page,.uploads-main{display:grid;gap:1rem}.uploads-main{align-content:start}.section-heading{display:grid;gap:.12rem}.panel-toolbar h3,.section-heading h2,.section-heading h3,.files-header h3{line-height:1.15}.content-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}.uploads-page-grid{display:grid;grid-template-columns:minmax(0,1.58fr) minmax(280px,.68fr);gap:12px;align-items:start}.dashboard-page-grid{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:12px;align-items:start}.compact-page-shell{width:min(100%,1040px);display:grid;gap:.9rem;margin-right:auto}.compact-page-shell-wide{width:min(100%,1180px)}.summary-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.summary-strip-two-up{grid-template-columns:repeat(2,minmax(0,1fr))}.summary-strip-four-up{grid-template-columns:repeat(4,minmax(0,1fr))}.summary-card{padding:.8rem .9rem;border-radius:16px}.uploads-summary-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-main-column,.dashboard-side-column,.summary-stack{display:grid;gap:.9rem}.dashboard-main-panel,.dashboard-side-panel{align-content:start}.panel{border-radius:18px;padding:.88rem}.main-panel,.detail-panel,.explorer-panel{background:#ffffffb8}.files-page-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:10px;align-items:stretch;min-height:calc(100vh - 132px)}.files-main-shell{display:grid;grid-template-columns:176px minmax(0,1fr);gap:0;padding:0;overflow:hidden;min-height:100%}.files-local-nav{display:grid;align-content:start;gap:.9rem;padding:.88rem;border-right:1px solid var(--border);background:#f9fafbe6;min-height:100%}.files-local-nav-list{display:grid;gap:.28rem}.files-sidebar-section{display:grid;gap:.45rem}.files-sidebar-label{color:var(--muted);font-size:.76rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.files-local-link{color:var(--ink);background:transparent;border:1px solid transparent;box-shadow:none;justify-content:flex-start;text-align:left;padding:.5rem .62rem;font-weight:600;border-radius:8px}.files-local-link.active,.files-local-link:hover{background:#2563eb14;border-color:#2563eb1a}.files-tree-card{padding:0;border:0;border-radius:0;background:transparent}.files-content-shell{padding:.88rem;min-height:100%;display:grid;align-content:start}.explorer-panel,.detail-panel{min-height:520px}.explorer-panel{padding:.9rem}.uploads-primary-panel{display:grid;gap:1rem}.uploads-dropzone{grid-template-columns:minmax(0,1fr) minmax(260px,320px);align-items:start}.uploads-dropzone-copy,.uploads-target-inline{display:grid;gap:.45rem}.uploads-queue-section{display:grid;gap:.7rem}.uploads-side-panel{position:sticky;top:16px;align-self:start}.jobs-list-shell{display:grid;gap:0}.jobs-list-header{margin-top:0}.jobs-row-meta{min-width:220px;grid-template-columns:88px 52px auto;align-items:center;gap:.7rem}.status-chip{display:inline-flex;align-items:center;justify-content:center;width:fit-content;padding:.24rem .5rem;border-radius:999px;border:1px solid rgba(15,23,42,.08);background:#f8fafceb;color:var(--muted);font-size:.76rem;font-weight:700}.status-chip-success{color:var(--success);border-color:#0f9f6e29;background:#ecfdf5eb}.storage-status-row{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.5rem}.storage-actions{margin-top:auto}.detail-panel{position:sticky;top:16px;align-self:start;padding:.75rem;min-height:100%;display:grid;align-content:start}.panel-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:.85rem}.compact-toolbar{align-items:center}.files-header{display:grid;gap:.18rem}.files-command-bar{align-items:center;justify-content:flex-end}.files-toolbar{display:grid;gap:.7rem;margin:.72rem 0 .82rem}.files-toolbar-top{align-items:start}.list-surface{border:1px solid var(--border);border-radius:12px;background:#fff;padding:.25rem .35rem .35rem}.list-header{display:grid;grid-template-columns:minmax(0,1fr) 140px 90px 88px;gap:1rem;padding:.2rem .6rem .45rem;color:var(--muted);font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid rgba(17,24,39,.06)}.list-header-actions{text-align:right}.pagination-bar{display:flex;align-items:center;justify-content:space-between;gap:.8rem;padding-top:.7rem}.pagination-copy{color:var(--muted);font-size:.88rem;font-weight:600}.drive-list-tight{gap:.55rem}.drive-list,.drive-grid,.list-table{display:grid;gap:0}.drive-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.card-grid,.page-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px;align-items:start}.storage-card{display:grid;align-content:start;gap:.7rem}.drive-item,.table-row{width:100%;text-align:left;color:var(--ink);border:0;border-bottom:1px solid rgba(17,24,39,.06);border-radius:0;padding:.78rem .6rem;background:#fff;display:flex;align-items:center;justify-content:space-between;gap:1rem;box-shadow:none}.drive-item{cursor:pointer;transition:background .12s ease}.drive-item:hover{background:#f8fafce0}.drive-item.active{background:#eff6ffd1;box-shadow:inset 2px 0 #2563ebe6}.drive-item-main,.drive-item-meta,.table-row>div,.table-meta,.meta-list,.action-stack{display:grid;gap:.28rem}.drive-item-meta,.table-meta{justify-items:end;color:var(--muted)}.drive-item-meta{min-width:220px;grid-template-columns:112px 72px auto;align-items:center;gap:.6rem}.drive-item-meta>span{white-space:nowrap;text-align:right}.row-actions{position:relative;display:flex;align-items:center;justify-content:flex-end;gap:.25rem}.row-action-button{opacity:0;pointer-events:none;transition:opacity .12s ease;padding:.24rem .48rem;min-height:30px}.drive-item:hover .row-action-button,.drive-item.active .row-action-button{opacity:1;pointer-events:auto}.item-badge{display:inline-flex;width:fit-content;padding:.18rem .5rem;border-radius:999px;background:#2563eb12;color:var(--accent-strong);font-size:.7rem;font-weight:700}.item-muted{color:var(--muted);font-size:.92rem}.meta-list{margin:.85rem 0}.compact-meta-list{margin:0}.meta-list>div{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:.7rem 0;border-bottom:1px solid rgba(15,23,42,.06)}.meta-list>div>span{min-width:0;flex:0 0 auto}.meta-list>div>strong{min-width:0;max-width:58%;text-align:right;overflow-wrap:anywhere;word-break:break-word}.preview-frame{width:100%;min-height:210px;border:1px solid var(--border);border-radius:14px;background:var(--bg-deep);object-fit:cover}.preview-fallback,.detail-empty,.empty-state,.page-loading,.dropzone{display:grid;gap:.8rem;border:1px dashed rgba(15,23,42,.1);border-radius:14px;padding:1rem;background:#f8fafceb}.empty-state-rich{justify-items:start}.empty-state-actions{display:flex;flex-wrap:wrap;gap:.7rem}.detail-panel .section-heading p{margin-top:.2rem}.inspector-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:.8rem;padding:.78rem;border:1px solid rgba(17,24,39,.06);border-radius:10px;background:#fff;margin:.8rem 0 .7rem}.inspector-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.25rem;margin-top:.75rem;padding-bottom:.55rem;border-bottom:1px solid rgba(17,24,39,.06)}.inspector-tab{color:var(--muted);background:transparent;border:1px solid transparent;box-shadow:none;font-weight:600;padding:.48rem .42rem}.inspector-tab.active{color:var(--ink);background:#2563eb14;border-color:#2563eb1a}.detail-tab-panel{margin-top:.75rem}.inspector-hero-main{display:grid;gap:.32rem}.inspector-status-block{min-width:96px;display:grid;gap:.22rem;justify-items:end}.inspector-section{display:grid;gap:.7rem;margin-top:1rem}.inspector-card,.inspector-meta-card{padding:.12rem .72rem;border:1px solid rgba(15,23,42,.06);border-radius:10px;background:#fff}.inspector-chip-row{display:flex;flex-wrap:wrap;gap:.5rem;padding-top:.75rem;padding-bottom:.75rem}.inspector-chip{display:inline-flex;align-items:center;padding:.34rem .58rem;border-radius:999px;border:1px solid var(--border);background:#f8fafceb;color:var(--muted);font-size:.78rem;font-weight:600}.action-stack{margin-top:1rem;gap:.4rem}.action-stack button,.action-stack .ghost-button,.action-stack .danger-button{width:100%;justify-content:center}.detail-actions{gap:.2rem}.detail-action-secondary{background:transparent;color:var(--ink);border:1px solid transparent;box-shadow:none}.detail-action-secondary:hover{background:#f8fafceb;box-shadow:none}.artifact-list{margin-top:1.1rem}.artifact-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.66rem 0;border-bottom:1px solid rgba(15,23,42,.06)}.storage-summary-card{display:grid;gap:0}.storage-summary-card>div,.replica-row{display:flex;align-items:flex-start;justify-content:space-between;gap:.8rem;padding:.66rem 0;border-bottom:1px solid rgba(15,23,42,.06)}.storage-summary-card>div>span{color:var(--muted);font-size:.82rem;font-weight:700}.storage-summary-card>div>strong{text-align:right}.replica-list{display:grid;gap:0}.replica-row>div{min-width:0;display:grid;gap:.18rem}.replica-row strong{overflow-wrap:anywhere}.replica-warning-card{border-color:#d977062e;background:#fffbebfa}.replica-warning-card strong{display:block;margin-top:.72rem}.replica-warning-card p{margin:.18rem 0 .72rem}.notice-text{color:var(--success)}.error-text{color:var(--danger)}.inline-link{color:var(--accent-strong);font-weight:600}.breadcrumbs{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap;margin-top:.45rem}.inline-metrics{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.25rem}.inline-metrics span{display:inline-flex;align-items:center;padding:.22rem .48rem;border:1px solid rgba(15,23,42,.06);border-radius:999px;background:#f8fafce0;color:var(--muted);font-size:.74rem;font-weight:600}.crumb-button,.compact-button{padding:.34rem .58rem;font-size:.84rem}.crumb-button{border-radius:6px}.upload-strip{display:grid;gap:.65rem;margin-bottom:1rem}.upload-pill{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.78rem .95rem;border:1px solid var(--border);border-radius:14px;background:#fffc}.dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;padding:1.5rem;display:grid;place-items:center;background:#0f172a38;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.dialog-card{width:min(520px,100%);padding:1.2rem;border-radius:18px;border:1px solid var(--border);background:var(--surface-strong);box-shadow:var(--shadow)}.dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.dialog-actions{display:flex;justify-content:flex-end;gap:.75rem}.dialog-form{display:grid;gap:.85rem}.dialog-form label{display:grid;gap:.35rem;color:var(--muted);font-size:.82rem;font-weight:700}.split-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.storage-toolbar{margin-bottom:1rem;flex-wrap:wrap}.policy-tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 1rem}.policy-tab{color:var(--ink);background:#fffc;border:1px solid var(--border);box-shadow:none}.policy-tab.active{color:#f8fbff;background:linear-gradient(180deg,#2d6df6 0%,var(--accent-strong) 100%);box-shadow:0 8px 18px #2563eb24}.policy-editor{display:grid;gap:1rem}.policy-editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.policy-editor-grid label{display:grid;gap:.35rem;color:var(--muted);font-size:.82rem;font-weight:700}.checkbox-field{display:inline-flex!important;align-items:center;gap:.55rem!important;color:var(--ink)!important}.checkbox-field input{width:18px;height:18px;flex:0 0 auto}.backend-policy-list,.decision-list{display:grid;gap:.65rem}.backend-policy-row,.decision-backend{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.72rem 0;border-bottom:1px solid rgba(15,23,42,.06)}.backend-policy-row>div:first-child,.decision-backend{min-width:0}.backend-policy-row strong,.decision-backend strong{display:block;overflow-wrap:anywhere}.backend-policy-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.7rem}.compact-checkbox{font-size:.82rem;font-weight:700}.decision-backend span{color:var(--muted);font-size:.82rem;font-weight:700}.filter-bar{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:.8rem}.search-shell{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.6rem}.toast-stack{position:fixed;left:50%;bottom:1rem;transform:translate(-50%);display:grid;gap:.65rem;z-index:40;justify-items:center}.toast-item{min-width:220px;max-width:360px;padding:.74rem .88rem;border-radius:14px;box-shadow:var(--shadow-soft);border:1px solid var(--border);background:var(--surface-strong)}.menu-popover{position:absolute;top:calc(100% + 8px);right:0;min-width:170px;padding:.35rem;border:1px solid var(--border);border-radius:14px;background:#fffffff5;box-shadow:var(--shadow-soft);display:grid;gap:.25rem;z-index:30}.menu-item{justify-content:flex-start;color:var(--ink);background:transparent;border:0;box-shadow:none;padding:.54rem .66rem}.menu-item:hover{background:#2563eb0f;box-shadow:none}.menu-item.danger{color:var(--danger)}.mono-text{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;display:block;font-size:.78rem;line-height:1.4;overflow-wrap:anywhere;word-break:break-all}.toast-success{border-color:#0f9f6e38}.toast-error{border-color:#dc262638}.tree-root,.tree-children{display:grid;gap:.28rem}.tree-node{display:grid;gap:.14rem}.tree-row{display:flex;align-items:center;gap:.35rem;padding:.12rem 0;border-radius:8px}.tree-row.active{background:#2563eb14}.tree-toggle,.tree-label{padding:.18rem .34rem}.tree-toggle{min-width:28px;border-radius:7px;background:#f8fafcf5}.tree-label{flex:1;text-align:left;background:transparent;font-size:.92rem}.move-picker{display:grid;gap:1rem}.move-tree{border:1px solid var(--border);border-radius:14px;padding:.9rem;background:#f8fafceb}@media(max-width:1100px){.app-shell,.login-page,.uploads-page-grid,.dashboard-page-grid,.files-page-layout,.files-main-shell,.content-grid,.uploads-dropzone{grid-template-columns:1fr}}@media(max-width:720px){.app-shell,.login-page{padding:1rem}.topbar,.panel-toolbar,.summary-strip,.summary-strip-two-up,.summary-strip-four-up,.drive-item,.table-row{flex-direction:column;align-items:stretch}.drive-item-meta,.table-meta{justify-items:start}.filter-bar{grid-template-columns:1fr}.search-shell,.selection-bar{grid-template-columns:1fr;flex-direction:column;align-items:stretch}.list-header{display:none}.drive-item-meta{grid-template-columns:1fr}}
|
|
|