:root {
    --bg: #fff8ee;
    --bg-2: #fff1d6;
    --panel: #ffffff;
    --panel-2: #fff7ea;
    --text: #2a1a10;
    --muted: #7f6452;
    --line: rgba(109, 74, 43, 0.14);
    --accent: #eb8f2d;
    --accent-2: #f5c96b;
    --accent-deep: #8f5527;
    --success: #2b8f57;
    --danger: #c4494c;
    --warning: #cc8a22;
    --shadow: 0 20px 40px rgba(126, 79, 33, 0.10);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
    margin: 0;
    font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
    background:
        radial-gradient(circle at top, rgba(245,201,107,0.35), transparent 30%),
        linear-gradient(180deg, var(--bg) 0%, #fffdf8 100%);
    color: var(--text);
}
a { color: inherit; text-decoration: none; }
.wrap { width: min(1180px, calc(100% - 32px)); margin: 0 auto; }
.topbar {
    border-bottom: 1px solid var(--line);
    position: sticky;
    top: 0;
    z-index: 50;
    backdrop-filter: blur(10px);
    background: rgba(255, 248, 238, 0.88);
}
.topbar-inner { display:flex; justify-content:space-between; align-items:center; min-height:78px; gap:16px; }
.brand { display:flex; align-items:center; gap:14px; font-weight:800; font-size:1.1rem; }
.brand-text { display:flex; flex-direction:column; line-height:1.05; }
.brand-text small { font-weight:600; font-size:.74rem; color: var(--muted); letter-spacing:.02em; margin-top:5px; }
.brand-mark {
    position: relative;
    width: 46px;
    height: 46px;
    border-radius: 16px;
    background: linear-gradient(180deg, #fff4d7 0%, #ffd995 100%);
    border: 1px solid rgba(143, 85, 39, 0.18);
    box-shadow: var(--shadow);
    flex: 0 0 46px;
}
.brand-mark::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 8px;
    width: 18px;
    height: 4px;
    border-radius: 999px;
    background: #7a4926;
    transform: translateX(-50%);
}
.toast-face {
    position: absolute;
    left: 50%;
    top: 7px;
    width: 24px;
    height: 28px;
    transform: translateX(-50%);
    border: 3px solid #935524;
    border-radius: 12px 12px 9px 9px;
    background: linear-gradient(180deg, #fff1c8 0%, #f7c86e 100%);
}
.toast-eye, .toast-smile {
    position: absolute;
    display: block;
}
.toast-eye {
    top: 8px;
    width: 3.5px;
    height: 3.5px;
    border-radius: 50%;
    background: #2a1a10;
}
.toast-eye.left { left: 6px; }
.toast-eye.right { right: 6px; }
.toast-smile {
    left: 50%;
    bottom: 6px;
    width: 10px;
    height: 5px;
    border-bottom: 2px solid #d15a59;
    border-radius: 0 0 10px 10px;
    transform: translateX(-50%);
}
.nav { display:flex; gap:12px; flex-wrap:wrap; }
.nav a {
    padding:10px 14px;
    border:1px solid var(--line);
    border-radius:14px;
    background: rgba(255,255,255,0.7);
    box-shadow: 0 8px 20px rgba(126,79,33,0.04);
    transition: transform .15s ease, border-color .15s ease, background .15s ease;
}
.nav a:hover, .button:hover { transform: translateY(-1px); }
.main-container { padding: 30px 0 52px; }
.card {
    background: linear-gradient(180deg, var(--panel) 0%, var(--panel-2) 100%);
    border: 1px solid var(--line);
    border-radius: 24px;
    padding: 24px;
    box-shadow: var(--shadow);
}
.soft-card { background: linear-gradient(180deg, rgba(255,255,255,0.9) 0%, rgba(255,247,234,0.9) 100%); }
.hero { margin-bottom: 22px; }
.hero-grid { display:grid; grid-template-columns: 1.55fr 1fr; gap:18px; align-items:stretch; }
.hero-main { padding: 42px; }
.hero-side { display:flex; flex-direction:column; gap:14px; justify-content:center; }
.toaster-card { position: relative; overflow: hidden; }
.toaster-card::before {
    content:"";
    position:absolute;
    inset:auto -40px -50px auto;
    width:180px;
    height:180px;
    border-radius:50%;
    background: radial-gradient(circle, rgba(245,201,107,0.35) 0%, rgba(245,201,107,0) 70%);
}
.toaster-hero-art {
    position: relative;
    height: 210px;
    margin-bottom: 8px;
}
.toast-pop {
    position: absolute;
    left: 50%;
    top: 10px;
    width: 88px;
    height: 102px;
    transform: translateX(-50%);
    border: 6px solid #965827;
    border-radius: 28px 28px 20px 20px;
    background: linear-gradient(180deg, #fff2cb 0%, #f1b44d 100%);
    box-shadow: 0 20px 30px rgba(143,85,39,0.18);
}
.toast-pop .toast-eye { top: 33px; width: 6px; height: 6px; }
.toast-pop .toast-eye.left { left: 21px; }
.toast-pop .toast-eye.right { right: 21px; }
.toast-pop .toast-smile { width: 20px; height: 9px; bottom: 18px; border-bottom-width: 3px; }
.toaster-body {
    position: absolute;
    left: 50%;
    bottom: 18px;
    width: 170px;
    height: 90px;
    transform: translateX(-50%);
    border-radius: 28px;
    background: linear-gradient(180deg, #2a231f 0%, #46352b 100%);
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.08);
}
.toaster-slot {
    position: absolute;
    left: 50%;
    bottom: 82px;
    width: 90px;
    height: 14px;
    transform: translateX(-50%);
    border-radius: 999px;
    background: #171210;
}
.toaster-lever {
    position: absolute;
    right: calc(50% - 95px);
    bottom: 48px;
    width: 8px;
    height: 34px;
    border-radius: 999px;
    background: #655349;
}
.steam {
    position:absolute;
    top: 0;
    width: 28px;
    height: 40px;
    border: 3px solid rgba(143,85,39,0.16);
    border-color: rgba(143,85,39,0.16) transparent transparent transparent;
    border-radius: 50%;
}
.steam-one { left: calc(50% - 58px); }
.steam-two { right: calc(50% - 58px); top: 6px; }
.hero-stat {
    position: relative;
    padding: 14px 16px;
    border-radius: 18px;
    background: rgba(255,255,255,0.7);
    border: 1px solid var(--line);
}
.hero-stat span, .stat span { display:block; color:var(--muted); font-size:.86rem; margin-bottom:4px; }
.hero-stat strong { font-size:1.05rem; }
.hero h1 { font-size: clamp(2.2rem, 4vw, 4.4rem); line-height: 1.02; margin: 6px 0 12px; letter-spacing: -0.04em; }
.hero p { color: var(--muted); max-width: 760px; font-size: 1.08rem; line-height: 1.75; }
.eyebrow { color: var(--accent-deep); text-transform: uppercase; letter-spacing: .14em; font-size: .76rem; font-weight: 800; }
.hero-pill-row { display:flex; gap:10px; flex-wrap:wrap; margin-top: 18px; }
.hero-pill {
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:10px 14px;
    border-radius:999px;
    background: rgba(255,255,255,0.75);
    border:1px solid var(--line);
    color: #5b4130;
    font-weight:700;
    font-size:.92rem;
}
.grid-three, .grid-four, .grid-two { display:grid; gap:18px; }
.grid-three { grid-template-columns: repeat(3, minmax(0,1fr)); }
.grid-four { grid-template-columns: repeat(4, minmax(0,1fr)); }
.grid-two { grid-template-columns: repeat(2, minmax(0,1fr)); }
.compact-grid .card, .compact-grid.card { padding:20px; }
.feature-card h3, .card h2, .card h3 { margin-top:0; letter-spacing:-0.02em; }
.feature-card p { color: var(--muted); line-height:1.7; }
.toaster-copy-grid { margin-top: 2px; margin-bottom: 24px; }
.hero-actions, .page-head { display:flex; justify-content:space-between; align-items:center; gap:16px; flex-wrap:wrap; }
.button {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    background: linear-gradient(180deg, var(--accent) 0%, #dd7c1d 100%);
    color:#fffaf2;
    border:none;
    border-radius:16px;
    padding:12px 16px;
    font-weight:800;
    cursor:pointer;
    box-shadow: 0 12px 24px rgba(221,124,29,0.22);
}
.button.ghost {
    background: rgba(255,255,255,0.75);
    color: var(--text);
    border:1px solid var(--line);
    box-shadow: none;
}
.button.danger { background: linear-gradient(180deg, var(--danger) 0%, #ae3438 100%); color: #fff; box-shadow:none; }
.button.small { padding: 8px 12px; border-radius: 12px; font-size:.92rem; }
.form-card { max-width: 760px; }
.wide-card { max-width:none; }
.auth-card h1 { margin-bottom: 8px; }
label { display:block; margin: 0 0 14px; color: var(--muted); font-weight:600; }
input, select {
    width: 100%;
    margin-top: 6px;
    background: rgba(255,255,255,0.85);
    color: var(--text);
    border:1px solid var(--line);
    border-radius: 14px;
    padding: 12px 14px;
}
.table { width:100%; border-collapse: collapse; }
.table th, .table td { text-align:left; padding:14px 12px; border-bottom:1px solid var(--line); vertical-align: top; }
.table th { color: var(--muted); font-size:.82rem; text-transform: uppercase; letter-spacing:.08em; }
.badge {
    display:inline-flex;
    padding:7px 11px;
    border-radius:999px;
    font-weight:800;
    font-size:.82rem;
    text-transform:capitalize;
    letter-spacing:.01em;
}
.badge-ready { background: rgba(43,143,87,.14); color:#246f46; }
.badge-ready::after { content: none; }
.badge-queued { background: rgba(204,138,34,.14); color:#9f6514; }
.badge-queued::after { content: none; }
.badge-blocked, .badge-flagged { background: rgba(196,73,76,.12); color:#99393c; }
.badge-blocked::after, .badge-flagged::after { content: none; }
.alert {
    padding: 14px 16px;
    border-radius: 16px;
    margin-bottom: 18px;
    border: 1px solid var(--line);
    background: rgba(255,255,255,0.8);
}
.alert.success { background: rgba(43,143,87,.10); }
.alert.error { background: rgba(196,73,76,.09); }
.inline-input { min-width: 260px; }
.inline-form { display:flex; gap:8px; flex-wrap:wrap; }
.muted { color: var(--muted); }
.footer { border-top:1px solid var(--line); padding:18px 0 30px; color:var(--muted); }
.footer-inner { display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap; }
.stats-grid { margin-bottom: 24px; }
.stat h2 { margin: 10px 0 0; font-size: 2rem; letter-spacing: -0.03em; }
.page-shell { display:flex; flex-direction:column; gap:22px; }
.page-shell.two-col { display:grid; grid-template-columns: 2fr 1fr; gap:22px; align-items:start; }
.stack-gap { display:flex; flex-direction:column; gap:8px; }
.progress-shell { height:14px; border-radius:999px; overflow:hidden; background:rgba(143,85,39,0.08); border:1px solid var(--line); }
.progress-bar { height:100%; width:0; background:linear-gradient(90deg, var(--accent), var(--accent-2)); transition:width .2s ease; }
.share-card { max-width:760px; margin:0 auto; }
.meta-grid { display:grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap:14px; margin:20px 0; }
.meta-grid div {
    padding:14px;
    border:1px solid var(--line);
    border-radius:16px;
    background: rgba(255,255,255,0.75);
}
.meta-grid span { display:block; color:var(--muted); font-size:.84rem; margin-bottom:6px; }
.divider { border:0; border-top:1px solid var(--line); margin:24px 0; }
.clean-list { margin:0; padding-left:18px; color:var(--muted); line-height:1.8; }
.clean-list strong { color: var(--text); }
.compact-form { max-width:420px; }
.side-list h3 { margin-top:0; }
.table-card { overflow:auto; }
code { background: rgba(143,85,39,0.08); padding: 2px 6px; border-radius: 8px; }
.dropzone {
    border: 2px dashed rgba(221,124,29,0.4);
    border-radius: 20px;
    padding: 26px;
    background: rgba(255,255,255,0.45);
    cursor: pointer;
    transition: border-color .2s ease, transform .2s ease, background .2s ease;
}
.dropzone.is-dragging { border-color: var(--accent); background: rgba(245,201,107,0.25); transform: scale(1.01); }
.dropzone input[type=file] { position:absolute; opacity:0; pointer-events:none; width:1px; height:1px; }
.dropzone-inner { display:flex; flex-direction:column; gap:8px; align-items:center; justify-content:center; min-height:140px; text-align:center; }
.copy-row { display:flex; gap:8px; align-items:center; }
.share-action-row { display:flex; gap:10px; flex-wrap:wrap; margin-bottom:18px; }
.preview-shell {
    margin-top: 20px;
    border: 1px solid var(--line);
    border-radius: 20px;
    overflow: hidden;
    background: rgba(255,255,255,0.6);
}
.file-preview-image { display:block; width:100%; height:auto; max-height:70vh; object-fit:contain; background:#f8f1e6; }
.file-preview-frame { display:block; width:100%; min-height:70vh; border:0; background:#fff; }
@media (max-width: 980px) {
    .hero-grid, .page-shell.two-col, .grid-four, .grid-two { grid-template-columns: 1fr; }
    .topbar-inner { align-items:flex-start; padding: 12px 0; }
}
@media (max-width: 900px) {
    .grid-three, .meta-grid { grid-template-columns: 1fr; }
    .copy-row { flex-direction:column; align-items:stretch; }
}


.checkbox-row {
    display:flex;
    align-items:flex-start;
    gap:10px;
    margin: 12px 0 18px;
    color: var(--text);
    font-weight: 600;
}
.checkbox-row input[type="checkbox"] {
    width: 18px;
    height: 18px;
    margin: 2px 0 0;
    flex: 0 0 18px;
}
.text-link {
    color: var(--accent-deep);
    text-decoration: underline;
    text-underline-offset: 2px;
}
.toast-alert {
    display:flex;
    align-items:flex-start;
    gap:14px;
    border-radius: 20px;
    padding: 16px 18px;
    margin-bottom: 18px;
}
.toast-alert-icon {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width: 42px;
    height: 42px;
    border-radius: 14px;
    background: rgba(255,255,255,0.72);
    font-size: 1.2rem;
    flex: 0 0 42px;
}
.toast-alert-copy {
    display:flex;
    flex-direction:column;
    gap:3px;
}
.alert.success {
    background: linear-gradient(180deg, rgba(66, 179, 112, 0.14) 0%, rgba(66, 179, 112, 0.08) 100%);
    border: 1px solid rgba(43,143,87,0.22);
    color: #1e5d3b;
}
.alert.error {
    background: linear-gradient(180deg, rgba(196, 73, 76, 0.12) 0%, rgba(196, 73, 76, 0.07) 100%);
    border: 1px solid rgba(196,73,76,0.18);
    color: #7f2e30;
}
.quota-card, .quota-panel {
    margin-top: 16px;
    border: 1px solid var(--line);
    background: rgba(255,255,255,0.72);
    border-radius: 18px;
    padding: 14px 16px;
}
.quota-head {
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:14px;
    margin-bottom: 10px;
    font-weight: 700;
}
.quota-head span {
    color: var(--muted);
    font-weight: 700;
}
.quota-bar {
    width: 100%;
    height: 12px;
    background: rgba(42,26,16,0.08);
    border-radius: 999px;
    overflow: hidden;
}
.quota-bar span {
    display:block;
    height:100%;
    border-radius:999px;
    background: linear-gradient(90deg, var(--accent) 0%, var(--accent-2) 100%);
}
.site-footer {
    border-top: 1px solid var(--line);
    background: rgba(255,248,238,0.88);
    padding: 18px 0 28px;
}
.footer-inner {
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:16px;
    flex-wrap:wrap;
    color: var(--muted);
}
.footer-nav {
    display:flex;
    gap:14px;
    flex-wrap:wrap;
}
.footer-nav a:hover, .text-link:hover {
    opacity: .85;
}
.legal-card {
    max-width: 900px;
}
.legal-card h3 {
    margin-top: 22px;
    margin-bottom: 8px;
}
.legal-card p {
    color: var(--muted);
    line-height: 1.8;
}
@media (max-width: 900px) {
    .quota-head, .footer-inner {
        flex-direction: column;
        align-items: flex-start;
    }
}


.form-actions-inline {
    display:flex;
    align-items:center;
    gap:14px;
    flex-wrap:wrap;
    margin-top: 8px;
}
.split-actions {
    justify-content:space-between;
}
.forgot-link {
    margin-left:auto;
    text-align:right;
}
.compact-checkbox {
    margin: 6px 0 8px;
}
.footer-copy {
    display:flex;
    flex-direction:column;
    gap:6px;
}
@media (max-width: 700px) {
    .split-actions {
        align-items:flex-start;
    }
    .forgot-link {
        margin-left:0;
    }
}

.page-head-merged {
    align-items: stretch;
}
.page-head-main {
    flex: 1 1 620px;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 16px;
}
.page-head-actions {
    align-self: flex-start;
}
.quota-panel-inline {
    margin-top: 2px;
    max-width: 760px;
}
.quota-copy {
    margin: 10px 0 0;
}
@media (max-width: 900px) {
    .page-head-actions {
        width: 100%;
    }
}


.checkbox-inline { display:inline-flex; align-items:center; gap:10px; color:var(--muted); font-weight:700; }
.checkbox-inline input, .row-check input { width:auto; margin:0; }
.file-manager-shell { display:flex; flex-direction:column; gap:18px; }
.file-manager-topbar { display:flex; justify-content:space-between; gap:18px; align-items:flex-end; flex-wrap:wrap; }
.file-manager-topbar h2 { margin:6px 0 8px; }
.file-manager-tools { display:flex; gap:12px; flex-wrap:wrap; align-items:center; }
.search-shell { min-width:280px; flex:1 1 280px; }
.toolbar-input { margin-top:0; min-width:210px; }
.toolbar-select { max-width:220px; }
.file-manager-bulkbar {
    display:flex;
    justify-content:space-between;
    gap:14px;
    align-items:center;
    flex-wrap:wrap;
    padding:14px 16px;
    border:1px solid var(--line);
    border-radius:18px;
    background:rgba(255,255,255,0.68);
}
.bulkbar-meta { display:flex; gap:10px; align-items:center; flex-wrap:wrap; color:var(--muted); font-weight:700; }
.file-table-wrap {
    overflow:auto;
    border:1px solid var(--line);
    border-radius:22px;
    background:rgba(255,255,255,0.58);
}
.file-table th { white-space:nowrap; }
.file-table .select-col { width:44px; }
.file-row.is-hidden { display:none; }
.file-row.is-deleted { opacity:.7; }
.file-name-cell { display:flex; align-items:center; gap:12px; min-width:230px; }
.file-chip {
    min-width:48px;
    padding:8px 10px;
    border-radius:14px;
    text-align:center;
    font-size:.78rem;
    font-weight:800;
    letter-spacing:.08em;
    color:var(--accent-deep);
    background:linear-gradient(180deg, rgba(245,201,107,0.22) 0%, rgba(235,143,45,0.10) 100%);
    border:1px solid rgba(143,85,39,0.16);
}
.mini-pill {
    display:inline-flex;
    align-items:center;
    padding:6px 10px;
    border-radius:999px;
    font-size:.82rem;
    font-weight:800;
    border:1px solid var(--line);
}
.mini-pill.is-protected { background:rgba(245,201,107,0.28); color:var(--accent-deep); }
.mini-pill.is-open { background:rgba(255,255,255,0.72); color:var(--muted); }
.copy-stack { display:flex; gap:8px; align-items:center; min-width:280px; }
.row-actions { display:flex; gap:8px; align-items:center; flex-wrap:wrap; }
.empty-state { padding:24px 8px; color:var(--muted); }

@media (max-width: 860px) {
    .file-manager-topbar { align-items:stretch; }
    .file-manager-tools { width:100%; }
    .search-shell { min-width:100%; }
    .toolbar-select { max-width:none; }
    .copy-stack { min-width:220px; flex-direction:column; align-items:stretch; }
}


/* ULTRA COMPACT FILE TABLE */
.file-table-wrap{overflow:hidden;border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,0.58);}
.file-table{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:0;}
.file-table th,.file-table td{vertical-align:middle;padding:8px 6px;}
.file-table th{font-size:.72rem;text-transform:uppercase;white-space:nowrap;}
.file-table td{font-size:.9rem;}

.file-table th:nth-child(2),.file-table td:nth-child(2){width:200px;}
.file-table th:nth-child(3),.file-table td:nth-child(3){width:50px;}
.file-table th:nth-child(4),.file-table td:nth-child(4){width:65px;}
.file-table th:nth-child(5),.file-table td:nth-child(5){width:90px;}
.file-table th:nth-child(6),.file-table td:nth-child(6){width:70px;}
.file-table th:nth-child(7),.file-table td:nth-child(7){width:50px;}
.file-table th:nth-child(8),.file-table td:nth-child(8){width:55px;}
.file-table th:nth-child(9),.file-table td:nth-child(9){width:150px;}
.file-table th:nth-child(10),.file-table td:nth-child(10){width:130px;}

.file-name-cell{display:flex;gap:6px;align-items:center;min-width:0;}
.file-meta strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;}

.copy-stack{display:flex;gap:4px;align-items:center;min-width:0;}
.copy-stack .inline-input{font-size:.75rem;padding:6px 8px;}

.row-actions .button{padding:6px 8px;font-size:.75rem;}


/* NEXT LEVEL UI */
.row-actions .button{
    padding:6px 8px;
    font-size:.75rem;
}

.button.copy::before{content:"📋";}
.button.open::before{content:"🔗";}
.button.delete::before{content:"🗑";}

.button.copy,
.button.open,
.button.delete{
    display:inline-flex;
    align-items:center;
    gap:4px;
}

.status-pill{
    padding:4px 8px;
    border-radius:999px;
    font-size:.72rem;
    font-weight:700;
}


/* CLEAN REBUILD: compact file manager */
.file-manager-shell {
    display: flex;
    flex-direction: column;
    gap: 16px;
}
.file-manager-topbar {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    align-items: flex-end;
    flex-wrap: wrap;
}
.file-manager-topbar h2 { margin: 4px 0 8px; }
.file-manager-tools {
    display: flex;
    gap: 10px;
    align-items: center;
    flex-wrap: wrap;
}
.search-shell { min-width: 280px; flex: 1 1 280px; }
.toolbar-input { margin-top: 0; min-width: 190px; }
.toolbar-select { max-width: 190px; }

.file-manager-bulkbar {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: center;
    flex-wrap: wrap;
    padding: 10px 12px;
    border: 1px solid var(--line);
    border-radius: 18px;
    background: rgba(255,255,255,0.68);
}
.bulkbar-meta {
    display: flex;
    gap: 8px;
    align-items: center;
    flex-wrap: wrap;
    color: var(--muted);
    font-weight: 700;
}

.file-table-wrap {
    overflow-x: auto;
    overflow-y: hidden;
    border: 1px solid var(--line);
    border-radius: 20px;
    background: rgba(255,255,255,0.62);
}
.file-table {
    width: 100%;
    min-width: 1020px;
    table-layout: fixed;
    border-collapse: separate;
    border-spacing: 0;
}
.file-table th,
.file-table td {
    vertical-align: middle;
    padding: 8px 6px;
}
.file-table th {
    white-space: nowrap;
    font-size: .72rem;
    letter-spacing: .03em;
    text-transform: uppercase;
}
.file-table td {
    font-size: .9rem;
}
.file-table .select-col { width: 34px; }
.file-table th:nth-child(2), .file-table td:nth-child(2) { width: 205px; }
.file-table th:nth-child(3), .file-table td:nth-child(3) { width: 56px; }
.file-table th:nth-child(4), .file-table td:nth-child(4) { width: 72px; }
.file-table th:nth-child(5), .file-table td:nth-child(5) { width: 88px; }
.file-table th:nth-child(6), .file-table td:nth-child(6) { width: 78px; }
.file-table th:nth-child(7), .file-table td:nth-child(7) { width: 52px; text-align:center; }
.file-table th:nth-child(8), .file-table td:nth-child(8) { width: 86px; text-align:center; }
.file-table th:nth-child(9), .file-table td:nth-child(9) { width: 170px; }
.file-table th:nth-child(10), .file-table td:nth-child(10) { width: 170px; }

.file-row.is-hidden { display: none; }
.file-row.is-deleted { opacity: .7; }

.file-name-cell {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}
.file-chip {
    flex: 0 0 auto;
    min-width: 40px;
    padding: 5px 7px;
    border-radius: 10px;
    text-align: center;
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: .05em;
    color: var(--accent-deep);
    background: linear-gradient(180deg, rgba(245,201,107,0.22) 0%, rgba(235,143,45,0.10) 100%);
    border: 1px solid rgba(143,85,39,0.16);
}
.file-meta {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 1px;
}
.file-meta strong {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    line-height: 1.15;
    font-size: .92rem;
}

.status-badge.badge {
    padding: 5px 8px;
    font-size: .74rem;
}
.badge-ready::after,
.badge-queued::after,
.badge-blocked::after,
.badge-flagged::after {
    content: none;
}

.mini-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 4px 8px;
    border-radius: 999px;
    font-size: .72rem;
    font-weight: 800;
    white-space: nowrap;
    border: 1px solid var(--line);
}
.mini-pill.is-protected {
    background: rgba(245,201,107,0.28);
    color: var(--accent-deep);
}
.mini-pill.is-open {
    background: rgba(255,255,255,0.82);
    color: var(--muted);
}

.copy-stack {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 4px;
}
.copy-stack .inline-input {
    width: 100%;
    min-width: 0;
    margin: 0;
    padding: 7px 8px;
    font-size: .75rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.row-actions {
    display: flex;
    gap: 4px;
    align-items: center;
    flex-wrap: nowrap;
}
.icon-btn {
    min-width: auto;
    padding: 7px 8px !important;
    gap: 4px;
}
.icon-btn .btn-icon {
    line-height: 1;
    font-size: .9rem;
}
.icon-btn .btn-label {
    font-size: .76rem;
    line-height: 1;
}
.bulk-delete-btn .btn-label {
    font-size: .82rem;
}
.empty-state {
    padding: 22px 8px;
    color: var(--muted);
}
.checkbox-inline input,
.row-check input {
    width: auto;
    margin: 0;
}

@media (max-width: 900px) {
    .file-manager-topbar { align-items: stretch; }
    .file-manager-tools { width: 100%; }
    .search-shell { min-width: 100%; }
    .toolbar-select { max-width: none; }
    .file-table { min-width: 940px; }
}
