* { box-sizing: border-box; }

body {
    margin: 0;
    font-family: 'Figtree', sans-serif;
    color: #0f1b2d;
}

textarea, input, select, button { font-family: 'Figtree', sans-serif; }

::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-thumb {
    background: #d6dce3;
    border-radius: 999px;
    border: 2px solid transparent;
    background-clip: content-box;
}
::-webkit-scrollbar-thumb:hover { background: #b8c1cc; background-clip: content-box; }

/* App shell: full-height column, header on top, React workspace fills the rest */
.csv-shell {
    height: 100vh;
    display: flex;
    flex-direction: column;
    background: #fff;
    overflow: hidden;
}

.csv-header {
    flex: none;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 24px;
    border-bottom: 1px solid #eef1f4;
}

.csv-header__left { display: flex; align-items: center; gap: 20px; }

.csv-back-link {
    text-decoration: none;
    color: #8a94a3;
    font-size: 13px;
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 7px;
}
.csv-back-link:hover { color: #3f5e8c; }

.csv-header__divider { width: 1px; height: 22px; background: #eef1f4; }
.csv-header__logo { height: 22px; width: auto; display: block; }

.csv-header__right { display: flex; align-items: center; gap: 12px; }
.csv-header__title { font-size: 15px; font-weight: 600; color: #0f1b2d; }

.csv-badge {
    font-family: 'Space Mono', monospace;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: #3f5e8c;
    background: #eef2f8;
    padding: 5px 9px;
    border-radius: 999px;
}

/* React mounts the workspace (validate body + footer actions) here */
.csv-root {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-height: 0;
}
