@layer components{.tool-upload-panel{display:flex;flex-direction:column;gap:var(--rj-space-3)}.tool-upload-panel__prompt{margin:0;font-size:var(--rj-type-label-size);font-weight:600;color:var(--rj-text-primary)}.tool-upload-document-icon{display:block;width:24px;height:24px;flex:0 0 24px;object-fit:contain}.tool-upload-dropzone{background:var(--rj-surface-raised);cursor:pointer;opacity:1}.tool-upload-dropzone__glyph{color:var(--rj-text-secondary);flex:0 0 auto}.tool-upload-dropzone__title{display:block;margin:0;font-weight:600;font-size:var(--rj-type-body-sm-size);line-height:1.35}.tool-upload-dropzone__hint{display:block;margin:var(--rj-space-1) 0 0;font-size:var(--rj-type-caption-size);color:var(--rj-text-secondary);line-height:1.5;overflow-wrap:break-word;word-break:normal}.tool-upload-dropzone.is-compact{display:flex;align-items:center;gap:var(--rj-space-3);min-height:56px;border:1px dashed var(--rj-border-strong);border-radius:var(--rj-radius-md);padding:var(--rj-space-2) var(--rj-space-3);text-align:left;transition:background var(--motion-fast,.12s),border-color var(--motion-fast,.12s)}.tool-upload-dropzone.is-compact .tool-upload-dropzone__copy{display:grid;min-width:0}.tool-upload-dropzone.is-compact .tool-upload-dropzone__glyph{margin-bottom:0}.tool-upload-dropzone.is-compact .tool-upload-dropzone__hint{margin-top:.1rem}.tool-upload-dropzone.is-dropzone{border:1.5px dashed var(--rj-border-strong);border-radius:var(--rj-radius-md);padding:var(--rj-space-4);text-align:center;transition:background .15s,border-color .15s}.tool-upload-dropzone.is-dropzone .tool-upload-dropzone__glyph{margin-bottom:.4rem}.tool-upload-dropzone.is-dropzone .tool-upload-dropzone__hint{margin-top:.3rem}.tool-upload-dropzone.is-tall{display:grid;justify-items:center;align-content:center;grid-gap:var(--rj-space-2-5);gap:var(--rj-space-2-5);width:100%;min-height:176px;border:1px dashed var(--rj-border-strong);border-radius:var(--rj-radius-lg);padding:var(--rj-space-6) var(--rj-space-5);text-align:center;transition:background var(--motion-fast,.12s),border-color var(--motion-fast,.12s)}.tool-upload-dropzone.is-tall .tool-upload-dropzone__copy{display:contents}.tool-upload-dropzone__icon{display:grid;place-items:center;width:64px;height:64px;border:1px solid var(--rj-border-subtle);border-radius:var(--rj-radius-pill);background:var(--rj-surface-panel);color:var(--rj-action);transition:border-color var(--motion-fast,.12s),color var(--motion-fast,.12s)}.tool-upload-dropzone.is-tall .tool-upload-dropzone__glyph{margin-bottom:0;color:inherit}.tool-upload-dropzone.is-tall .tool-upload-dropzone__title{font-size:var(--rj-type-body-size);font-weight:700;color:var(--rj-text-primary)}.tool-upload-dropzone.is-tall .tool-upload-dropzone__hint{margin-top:0;font-family:var(--font-mono);font-size:var(--rj-type-caption-size);color:var(--rj-text-secondary)}.tool-upload-dropzone.is-tall:hover:not(.is-disabled),.tool-upload-dropzone.is-tall:not(.is-disabled).is-dragover{border-color:var(--rj-action);background:var(--rj-surface-accent)}.tool-upload-dropzone.is-tall.is-dragover .tool-upload-dropzone__icon,.tool-upload-dropzone.is-tall:hover:not(.is-disabled) .tool-upload-dropzone__icon{border-color:var(--rj-action)}.tool-upload-dropzone.is-dragover{border-color:var(--rj-action);background:var(--rj-surface-accent)}.tool-upload-dropzone.is-tall.is-dragover{border-style:solid;box-shadow:0 0 0 3px var(--rj-focus-ring)}.tool-upload-dropzone.is-disabled{opacity:.6;cursor:not-allowed}.tool-upload-dropzone:focus-visible,.tool-upload-thumb-remove:focus-visible{outline:2px solid var(--rj-action);outline-offset:2px;box-shadow:0 0 0 4px var(--rj-focus-ring)}.tool-upload-thumb-remove:focus-visible{z-index:2;outline-offset:-2px}@media (max-width:640px){.tool-upload-dropzone.is-tall{display:flex;align-items:center;justify-items:legacy;align-content:normal;gap:var(--rj-space-3);min-height:56px;border-radius:var(--rj-radius-md);padding:var(--rj-space-2) var(--rj-space-3);text-align:left}.tool-upload-dropzone.is-tall .tool-upload-dropzone__copy{display:grid;min-width:0}.tool-upload-dropzone.is-tall .tool-upload-dropzone__icon{width:36px;height:36px}.tool-upload-dropzone.is-tall .tool-upload-dropzone__title{font-size:var(--rj-type-body-sm-size)}}}@media (prefers-reduced-motion:reduce){.tool-upload-dropzone{transition:none!important}}