:root {
    --pdfu-primary: #6366f1;
    --pdfu-primary-hover: #4f46e5;
    --pdfu-secondary: #a855f7;
    --pdfu-bg-gradient: linear-gradient(135deg, #4f46e5 0%, #9333ea 100%);
    --pdfu-glass-bg: rgba(255, 255, 255, 0.85);
    --pdfu-text-main: #1f2937;
    --pdfu-font: 'Inter', system-ui, sans-serif;
}
.pdfu-app-wrapper {
    position: relative; width: 100%; min-height: 600px;
    font-family: var(--pdfu-font); color: var(--pdfu-text-main);
    padding: 40px 20px; background: var(--pdfu-bg-gradient);
    display: flex; justify-content: center; align-items: flex-start;
    border-radius: 12px; box-sizing: border-box; overflow: hidden;
}
.pdfu-blob {
    position: absolute; border-radius: 50%; filter: blur(80px); z-index: 0; opacity: 0.6;
}
.pdfu-blob-1 { width: 300px; height: 300px; background: #f472b6; top: -50px; left: -50px; }
.pdfu-blob-2 { width: 350px; height: 350px; background: #60a5fa; bottom: -50px; right: -50px; }

.pdfu-glass-container {
    position: relative; z-index: 10; width: 100%; max-width: 700px;
    background: var(--pdfu-glass-bg); backdrop-filter: blur(20px);
    border: 1px solid rgba(255,255,255,0.6); border-radius: 20px;
    box-shadow: 0 10px 40px -10px rgba(0,0,0,0.15); padding: 40px;
}
.pdfu-header { text-align: center; margin-bottom: 30px; }
.pdfu-icon-badge {
    display: inline-flex; align-items: center; justify-content: center;
    width: 48px; height: 48px; background: linear-gradient(135deg, var(--pdfu-primary), var(--pdfu-secondary));
    border-radius: 12px; color: white; margin-bottom: 15px;
}
.pdfu-header h1 { margin: 0 0 8px 0; font-size: 28px; font-weight: 700; color: #1f2937; }
.pdfu-format-panel { display: flex; flex-wrap: wrap; justify-content: center; gap: 15px; margin-bottom: 25px; }
.pdfu-format-options { display: flex; gap: 10px; }
.pdfu-chip { cursor: pointer; position: relative; }
.pdfu-chip input { position: absolute; opacity: 0; width:0; height:0; }
.pdfu-chip-content {
    padding: 6px 14px; background: rgba(0,0,0,0.05); border-radius: 50px;
    font-size: 13px; font-weight: 600; color: #6b7280; transition: all 0.3s;
}
.pdfu-chip input:checked ~ .pdfu-chip-content { background: var(--pdfu-primary); color: white; }

.pdfu-dropzone {
    border: 2px dashed #cbd5e1; border-radius: 16px; background: rgba(255,255,255,0.5);
    padding: 40px 20px; text-align: center; cursor: pointer; transition: 0.3s; margin-bottom: 30px;
}
.pdfu-dropzone:hover, .pdfu-dropzone.drag-over { border-color: var(--pdfu-primary); transform: translateY(-2px); }
.pdfu-upload-icon { color: var(--pdfu-primary); margin-bottom: 15px; }
.pdfu-dropzone h3 { margin: 0; font-size: 18px; font-weight: 600; }

.pdfu-queue-list { display: flex; flex-direction: column; gap: 15px; margin-bottom: 30px; }
.pdfu-job-card {
    display: flex; align-items: center; background: white; padding: 15px 20px;
    border-radius: 12px; box-shadow: 0 2px 10px rgba(0,0,0,0.05);
}
.pdfu-job-card strong { display: block; font-size: 14px; margin-bottom: 6px; }
.pdfu-progress { height: 6px; background: #e2e8f0; border-radius: 10px; overflow: hidden; margin-top: 5px; }
.pdfu-bar { height: 100%; background: linear-gradient(90deg, var(--pdfu-primary), var(--pdfu-secondary)); transition: width 0.3s ease; }

.pdfu-gallery { display: grid; grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); gap: 15px; }
.pdfu-gallery img { width: 100%; border-radius: 8px; box-shadow: 0 4px 6px rgba(0,0,0,0.05); background: white; }

.button-primary { background: var(--pdfu-primary) !important; color: white !important; }