.upload-zone{width:100%;min-width:0}.upload-zone--disabled{opacity:.65;pointer-events:none}.upload-zone-droparea--disabled,.upload-zone-inline-shell--disabled{cursor:not-allowed}.upload-zone-droparea{text-align:center;cursor:pointer;border:1px solid var(--border-color);background-color:var(--bg-primary);color:var(--text-primary);border-radius:1rem;margin-bottom:0;padding:1.5rem 2rem;transition:background-color .2s,border-color .2s,color .2s;display:block;position:relative}.upload-zone-droparea:hover{background-color:var(--bg-primary);border-color:var(--color-primary)}.upload-zone-droparea-active{border-color:var(--color-primary);background-color:#233e801a;border-width:2px}.upload-zone-input{opacity:0;width:100%;height:100%;position:absolute;top:0;left:0}.upload-zone-icon{color:var(--color-primary);margin-bottom:.5rem}.upload-zone-icon-svg{width:48px;height:48px;font-size:1.5rem;line-height:48px}.upload-zone-prompt{color:var(--text-primary);margin-bottom:.25rem;font-weight:500}.upload-zone-help{color:var(--text-muted);margin-bottom:0;font-size:.875rem}.upload-zone-error{color:#dc3545;margin-top:.25rem;font-size:.875rem}.upload-zone-filelist{gap:.75rem;min-width:0;max-width:100%;margin:.5rem 0 0;padding:0;list-style:none;display:grid}.upload-zone-preview{border:1px solid var(--border-color,#e2e8f0);color:var(--text-primary,#1a202c);box-sizing:border-box;background:#f1f5f9;border-radius:1rem;width:100%;min-width:0;max-width:100%;padding:.875rem 1rem}html.dark-mode .upload-zone-preview{background:color-mix(in srgb, var(--bg-secondary,#1b2a42) 70%, var(--bg-primary,#050d1a));border-color:var(--border-color,#445168)}.upload-zone-preview__header{justify-content:space-between;align-items:center;gap:.5rem;min-width:0;margin-bottom:.75rem;display:flex}.upload-zone-preview__media{border:1px solid color-mix(in srgb, var(--border-color,#e2e8f0) 80%, transparent);background:#fff;border-radius:.75rem;justify-content:center;align-items:center;width:100%;min-height:10rem;display:flex;overflow:hidden}html.dark-mode .upload-zone-preview__media{background:var(--bg-primary,#050d1a)}.upload-zone-preview__image{object-fit:contain;background:#fff;width:100%;max-height:14rem;display:block}.upload-zone-preview__pdf{border:0;width:100%;height:14rem;display:block}.upload-zone-preview__fallback{color:var(--text-muted,#718096);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;margin:0;padding:1.5rem 1rem;font-size:.8125rem;display:flex}.upload-zone-preview__fallback i{color:var(--color-primary,#233e7e);font-size:1.5rem}.upload-zone-filename{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;max-width:100%;font-size:.875rem;font-weight:600;display:block;overflow:hidden}.upload-zone-remove{color:#dc3545;cursor:pointer;background:0 0;border:none;flex-shrink:0;margin-left:.5rem;padding:0;font-size:.875rem;text-decoration:none}.upload-zone-remove:hover{color:#dc3545;text-decoration:underline}.upload-zone--inline{margin-bottom:1rem}.upload-zone--inline .upload-zone-droparea--inline{color:#1a202c;background-color:#fff;border:1px solid #e0e7ff;border-radius:1rem;justify-content:flex-start;align-items:center;gap:.5rem;min-height:58px;padding:.35rem .75rem;display:flex}.upload-zone--inline .upload-zone-droparea--inline:hover{border-color:var(--color-primary)}.upload-zone--inline .upload-zone-droparea-active.upload-zone-droparea--inline{background-color:#fff;border:1px solid #233e7e}.upload-zone-inline-row{align-items:center;gap:.5rem;width:100%;min-width:0;display:flex}.upload-zone--inline .upload-zone-icon{flex-shrink:0;margin-bottom:0}.upload-zone--inline .upload-zone-icon-svg{width:1.25rem;height:1.25rem;font-size:1.1rem;line-height:1.25rem}.upload-zone-prompt--inline{text-align:left;white-space:normal;overflow-wrap:anywhere;flex:1;min-width:0;margin-bottom:0;font-size:.8125rem;font-weight:500;line-height:1.25}.upload-zone-help--inline-below{color:var(--text-muted);text-align:left;margin-top:.35rem;margin-bottom:0;font-size:.8125rem;line-height:1.4}.upload-zone--inline-floating .upload-zone-help--inline-below{margin-top:.55rem}.upload-zone--inline .upload-zone-error{margin-top:.25rem}.upload-zone--inline .upload-zone-filelist{width:100%;margin-top:.35rem}.upload-zone--inline-floating{min-width:0;max-width:100%}.upload-zone--inline-floating label.upload-zone-inline-shell{cursor:pointer;min-height:58px;font-weight:inherit;color:#1a202c;background-color:#fff;border:1px solid #e0e7ff;border-radius:1rem;grid-template-rows:auto 1fr;grid-template-columns:1fr;align-items:stretch;margin:0;padding:.62rem .55rem .42rem;transition:background-color .2s,border-color .2s;display:grid;position:relative}.upload-zone--inline-floating .upload-zone-inline-shell:hover{border-color:var(--color-primary)}.upload-zone--inline-floating .upload-zone-inline-shell--active{background-color:#fff;border:1px solid #233e7e}.upload-zone--inline-floating .upload-zone-input--inline-floating{z-index:3;opacity:0;cursor:pointer;grid-area:1/1/-1;width:100%;height:100%;margin:0;font-size:0;position:absolute;inset:0}.upload-zone--inline-floating .upload-zone-floating-label{z-index:2;color:#718096;pointer-events:none;text-overflow:ellipsis;white-space:nowrap;grid-area:1/1;align-self:start;max-width:calc(100% - 1.25rem);margin:0 0 0 .1rem;font-size:.75rem;font-weight:600;line-height:1.2;position:relative;overflow:hidden}.upload-zone--inline-floating .upload-zone-floating-label .text-danger{color:var(--bs-danger,#dc3545);margin-left:.25rem}.upload-zone--inline-floating .upload-zone-inline-row--floating{z-index:1;pointer-events:none;flex-direction:row;grid-area:2/1;align-self:center;align-items:center;gap:.35rem;width:100%;min-width:0;min-height:0;padding:0;display:flex;position:relative}.upload-zone--inline-floating .upload-zone-inline-row--floating .upload-zone-icon{flex-shrink:0;margin-top:0;margin-bottom:0}.upload-zone--inline-floating .upload-zone-inline-row--floating .upload-zone-icon-svg{width:1.25rem;height:1.25rem;font-size:1.1rem;line-height:1.25rem}.upload-zone--inline-floating .upload-zone-inline-row--floating .upload-zone-prompt--inline{white-space:normal;overflow-wrap:anywhere;margin-bottom:0;font-size:.8125rem;line-height:1.25;display:block}
