:root{background:#f5f7fa;color:#172033;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,.button{border:0;border-radius:8px;background:#155eef;color:#fff;cursor:pointer;min-height:42px;padding:.68rem 1rem}.text-button{background:transparent;color:#155eef;min-height:auto;padding:0;text-align:left}button:disabled{cursor:wait;opacity:.65}input,select{background:#fff;border:1px solid #cfd8e3;border-radius:8px;min-height:42px;padding:.58rem .72rem}label{color:#334155;display:grid;font-size:.9rem;gap:6px}.secondary-button{background:#eef3f8;color:#172033}.shell{margin:0 auto;max-width:1180px;padding:24px}.auth-page{align-items:center;display:grid;min-height:100vh;padding:20px}.auth-card{background:#fff;border:1px solid #dce3ec;border-radius:10px;box-shadow:0 16px 40px #0f172a14;display:grid;gap:14px;margin:0 auto;max-width:390px;padding:24px;width:100%}.auth-card h1{margin:0}.app-header{align-items:center;display:flex;gap:24px;justify-content:space-between;margin-bottom:24px}.app-header h1{font-size:2rem;letter-spacing:-.01em;margin:0}.app-header nav,.app-tabs{align-items:center;display:flex;gap:10px}.tab-button{background:#fff;border:1px solid #dce3ec;border-radius:8px;color:#172033;min-height:38px;padding:.52rem .78rem}.tab-button.active{background:#155eef;border-color:#155eef;color:#fff}.eyebrow{color:#64748b;font-size:.76rem;font-weight:700;letter-spacing:.08em;margin:0 0 4px;text-transform:uppercase}.section{background:#fff;border:1px solid #dce3ec;border-radius:10px;margin-bottom:18px;padding:20px}.section-title{align-items:end;display:flex;gap:16px;justify-content:space-between;margin-bottom:16px}.section-title h2{margin:0 0 4px}.section-title p{color:#64748b;margin:0}.toolbar-form,.import-form,.list-toolbar{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:18px}.toolbar-form input,.list-toolbar input{flex:1 1 320px}.list-toolbar{align-items:end}.list-toolbar label{flex:1 1 320px}.import-form label{min-width:150px}.import-form .checkbox-label{align-items:center;display:flex;gap:8px;min-height:42px}.checkbox-label input{min-height:auto}.confirm-panel,.result-panel{background:#f8fafc;border:1px solid #dce3ec;border-radius:10px;margin-top:16px;padding:14px}.inline-status,.confirm-panel{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.confirm-panel p,.result-panel h3{margin:0}.confirm-panel p{color:#64748b}.table-wrap{overflow-x:auto}table{border-collapse:collapse;min-width:760px;width:100%}th,td{border-bottom:1px solid #e6edf5;padding:.72rem;text-align:left;vertical-align:top}th{color:#64748b;font-size:.76rem;text-transform:uppercase}.file-name-button{max-width:440px}.table-sort-button{align-items:center;background:transparent;color:inherit;display:inline-flex;font-size:inherit;font-weight:inherit;gap:2px;justify-content:inherit;min-height:auto;padding:0;text-align:inherit;text-transform:inherit}.numeric-cell{text-align:right}.status-pill{border-radius:999px;display:inline-block;font-size:.78rem;font-weight:700;padding:.24rem .55rem}.status-completed{background:#dcfae6;color:#067647}.status-failed{background:#fee4e2;color:#b42318}.status-preview_ready,.status-uploaded,.status-analyzing,.status-confirming{background:#e0f2fe;color:#026aa2}.detail-row td{background:#f8fafc}.history-detail-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.history-detail-grid div{border:1px solid #dce3ec;border-radius:8px;padding:10px}.history-detail-grid span{color:#64748b;display:block;font-size:.78rem}.history-detail-grid strong{display:block;margin-top:4px}.price-list-detail{display:grid;gap:16px}.price-list-detail h3{font-size:1rem;margin:0}.nested-table-wrap table{min-width:640px}.error{color:#b42318}.success{color:#067647}.muted{color:#64748b;margin:0}.stats{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(128px,1fr));margin-bottom:16px}.stat{border:1px solid #dce3ec;border-radius:10px;padding:12px}.stat span{color:#64748b;display:block;font-size:.78rem}.stat strong{display:block;font-size:1.35rem;margin-top:4px}@media(max-width:720px){.app-header,.section-title{align-items:flex-start;flex-direction:column}.app-header nav,.app-tabs{flex-wrap:wrap}.shell{padding:14px}}
